Looper Situation (Workflow Builder)

Ever tired of making your workflow super long because there’s no looping option?

Here’s a neat trick that might help!

In my use case, I use a number column to determine how many subitems (entitled # of Installments) I want created from the item level. I also use another number column to double-check that the number of subitems matches what I originally inputted.

Special Note: For this workflow, I recommend using the free “Workflow Blocks: Formula” app. You can build this without the app by adding extra columns and workflow blocks, but the app simplifies the process.

Disclaimer: I’ll only cover the core steps relevant to this situation; any other blocks are unnecessary for this guide.

You can also download my template here to see it in action.


Step 1: Add Columns to Your Board

Add these three columns:

  1. Formula column – with formula {Subitems#Count}

  2. Numbers column – for calculating the installment difference

  3. Status column – used to trigger the looping workflow

Important: This example is for subitem creation. Depending on your needs, you may not require the formula or numbers column. The status column is essential.


Step 2: First Workflow (Optional)

This step may not be necessary for everyone. You could also do this as an automation to turn the trigger, but I needed the Workflow Builder in order to set a number.

  • Trigger: When the # of Installments changes (and is not 0)

  • Action: Calculate the difference between the current and previous value and store it in the Install Difference column

  • Then: Change the Trigger Status column to ON


Step 3: Main Workflow

This is the core looping logic:

  • Trigger: When the Trigger Status column is turned ON

  • Convert the formula column (# of Subitems) to a number value for reference

Logic:

  1. If Installment Difference = 0

    • Check if # of Installments equals the formula number value

    • If yes → turn Trigger Status OFF and stop workflow

    • If no → create or delete subitems to match the target number

    • Loop: Turn Trigger Status OFF, then ON to run workflow again

  2. If Installment Difference ≠ 0

    • Create or delete subitems based on the difference

    • Loop: Turn Trigger Status OFF, then ON

This effectively creates a “loop” without native looping functionality.