Hi Mike,
This flow should work. The function node generates a cyclic output for each of the tab numbers hard coded in the array tabs.
[{"id":"c585b65b.a49048","type":"tab","label":"Flow 4","disabled":false,"info":""},{"id":"1636eb6b.9aa1c5","type":"ui_ui_control","z":"c585b65b.a49048","name":"","x":500,"y":120,"wires":[[]]},{"id":"cce3d906.6760f8","type":"inject","z":"c585b65b.a49048","name":"","topic":"","payload":"","payloadType":"date","repeat":"3","crontab":"","once":true,"onceDelay":0.1,"x":150,"y":120,"wires":[["523a4a55.4d53a4"]]},{"id":"523a4a55.4d53a4","type":"function","z":"c585b65b.a49048","name":" [0,3,7,9,13]","func":"let tabIndex = context.get(\"tabIndex\") || 0;\nlet tabs = [0,3,7,9,13]; \n \nfunction selectNextTab() \n{\n\n return tabs[tabIndex++] || (tabIndex=0, tabs[tabIndex++]); \n}\n\nmsg.payload = {\"tab\" : selectNextTab()};\ncontext.set(\"tabIndex\", tabIndex);\nreturn msg;\n","outputs":1,"noerr":0,"x":310,"y":120,"wires":[["78438012.11729","1636eb6b.9aa1c5"]]},{"id":"78438012.11729","type":"debug","z":"c585b65b.a49048","name":"","active":true,"tosidebar":true,"console":false,"tostatus":true,"complete":"payload","x":510,"y":160,"wires":[]}]