Excel is great at storing data. However, it has no built-in way to alert you when that data changes. Power Automate fills this gap. It monitors an Excel file on OneDrive or SharePoint. When a new row is added or a value changes, it sends an email alert instantly — no VBA required.
This guide covers the two main trigger types and six practical flows. Examples include a new-row alert, a threshold alert, a daily digest, a conditional column alert, a multi-recipient notification, and an approval request triggered by a row change.
The Two Main Excel Triggers
Power Automate uses triggers to decide when a flow runs. Two triggers matter most for Excel alerts. The first detects new rows added to a table. The second runs on a schedule, querying the file at set intervals for value changes.
| Trigger | When it fires | Best for |
|---|---|---|
| When a row is added | Every time a new row is inserted into an Excel Table | New entry alerts, approval triggers, instant notifications |
| Recurrence | At a fixed interval (e.g. every hour, 9am daily) | Threshold checks, daily digests, monitoring value changes |
| When a file is modified | Any change to the Excel file on SharePoint | General change detection when row-level detail is not needed |
Setting Up the Excel Connection
The data must live inside a named Excel Table, not a plain range. Additionally, the file must be saved to OneDrive for Business or a SharePoint document library. Both are quick one-time setup steps that unlock all Power Automate Excel capabilities.
Examples 1–4: Excel Alert Flows in Practice
This is the most common Excel alert pattern. A Microsoft Form writes responses to an Excel table. Power Automate detects each new row and emails you the submitted values instantly. You therefore never need to open the file to see what came in.
A Recurrence trigger checks the table every hour. A List rows action reads all rows. A Filter array keeps only rows where the value exceeds your threshold. If that array is not empty, the flow consequently sends an alert email. This is how you build an automated KPI monitor.
A Recurrence trigger fires at 8am. A List rows action reads the table. A Filter array keeps only today’s rows. An Apply to each loop then builds an HTML table from those rows. Finally, the email action sends the formatted summary. This replaces manual daily file checking entirely.
Instead of alerting on every new row, add a Condition action after the trigger. The condition checks whether the Status column equals "Urgent". Only Urgent rows trigger the email. Other rows are processed silently without generating any notification.
Examples 5–6: Multi-Recipient and Approval Request
A Switch action routes emails to different recipients based on a column value. Specifically, it checks the Region column and directs each alert to the right team address. This consequently replaces a manual distribution process with an automated routing system.
The Start and wait for an approval action sends an approval email to a manager. When the manager clicks Approve or Reject, Power Automate updates the Status column automatically. This creates an end-to-end approval workflow without any extra infrastructure or SharePoint lists.
Common Issues and How to Fix Them
The trigger fires but sends duplicate emails
Duplicate triggers usually occur because the Excel table lacks a unique key column. Power Automate uses this column to track processed rows. Go to the trigger settings and add a column with a unique value per row — such as an ID or timestamp. A formula like =ROW()-1 or a manually managed ID column both work.
The flow does not trigger when a row is added
First, check that the data is a proper Excel Table rather than a plain range. The "When a row is added" trigger only works with formatted Tables. Additionally, verify the file is on OneDrive for Business or SharePoint — not personal OneDrive. Finally, confirm the Power Automate connection has not expired and still has file access.
Frequently Asked Questions
-
Does the Excel file need to be on SharePoint for Power Automate to work?+The file must be on OneDrive for Business or a SharePoint document library. Personal OneDrive accounts have limited connector support. The file cannot be stored on a local drive or network share. If your file is currently local, upload it to OneDrive for Business and update any existing links to the new location.
-
Can Power Automate detect a cell value change, not just a new row?+The "When a row is added" trigger only fires for new rows. To monitor value changes to existing rows, use a Recurrence trigger that reads all rows with List rows on a schedule and compares the current value to a previously stored value. Store the previous value in a SharePoint list item or a separate cell to compare on each run.
-
How do I include Excel table data in the email body?+Click the email Body field in Power Automate and then click "Add dynamic content." This opens a panel showing all column names from your Excel table. Click any column to insert it as a dynamic placeholder. When the flow runs, each placeholder is replaced with the actual value from the triggering row. You can also build an HTML table using an Apply to each loop for multiple rows.
-
Is Power Automate free with Microsoft 365?+Most Microsoft 365 Business and Enterprise plans include Power Automate with a seeded licence covering standard connectors — including Excel, Outlook, and SharePoint. Premium connectors such as Salesforce or SQL Server require a paid Power Automate licence. Check your M365 admin centre or visit make.powerautomate.com to see which tier your account includes.