Power Automate Intermediate Lesson 4: Apply to Each, Arrays and Select

Power Automate Intermediate Lesson 4: Apply to Each, Arrays and Select 1

πŸ“Ž This article includes 1 downloadable practice file ↓

⏱ 2 min read

πŸ“˜ Power Automate Intermediate Course Β· Lesson 4 of 8

Advertisement

One email per row is spam. Collect rows, then send one summary.

Action Does
Filter array Keep items matching a condition: item()?['Status'] is equal to Submitted
Select Reshape each item: map Claim = ClaimID, Who = Employee, Rs = Amount
Create HTML table Turns the Select output into a table for an email body
Join Array to text: join(body('Select'), ', ')
length() How many: length(body('Filter_array'))

Select + Create HTML table needs no loop at all, so it’s faster and simpler than Apply to each with Append to string variable.

When you do loop

  • Apply to each > Settings > Concurrency control (e.g. 10) runs iterations in parallel: much faster for independent items.
  • Don’t use concurrency when the loop appends to a variable; order and totals can go wrong.
πŸ’‘ Nested Apply to each (each email β†’ each attachment) is normal. Name actions clearly (“Each attachment”) or expressions become unreadable.

Practice

Build a flow that emails one HTML table of all Submitted claims. Build it in your own Microsoft 365 account at make.powerautomate.com, test it with the practice file, and check the run history.

πŸ“Ž Practice files for this article

Free to use for learning. Files with macros (.bas) are plain text β€” import them with Alt+F11 β†’ File β†’ Import File, and always test on a copy.

Advertisement
✨ Ask AI about this article

Stuck on a step? Ask a question and the AI answers using this article.

Free Β· AI can be wrong