How to email a weekly Excel report automatically with Power Automate
A scheduled flow that reads your Excel table and emails a clean report every Monday. Standard Microsoft 365 licence, no SharePoint.
If someone on your team copies numbers from a spreadsheet into an email every week, Power Automate can do it for them. This flow runs on a normal Microsoft 365 business plan. You do not need SharePoint or a premium licence.
What you need
- A Microsoft 365 business account with Power Automate (included in Business Basic and Standard)
- An Excel file saved in OneDrive for Business
- Your data formatted as a table (Home, Format as Table) with a clear name such as
SalesData
Step 1: Create a scheduled flow
In Power Automate, choose Create, then Scheduled cloud flow. Set it to repeat every 1 week, pick Monday, set the start time and choose your time zone. Getting the time zone right matters, or the report arrives at 3am.
Step 2: Read the rows from Excel
Add the List rows present in a table action from the Excel Online (Business) connector. Point it at OneDrive, your file and your table.
By default this action only returns the first 256 rows. If your table is bigger, open the action settings, turn on Pagination and set a higher threshold.
Step 3: Build the table for the email
Add Create HTML table and use the value output from the previous step. Switch columns to custom if you only want some of them, and give each one a clear header.
Step 4: Send it
Add Send an email (V2) from Office 365 Outlook. Add your recipients, a subject like "Weekly sales report", and put the HTML table output in the body.
Step 5: Test before you trust it
Run the flow manually once and check the email on desktop and phone. Then leave it on. It will now run every week without anyone touching it.
Want this set up for your own reports, or a version that filters to the last seven days only? That is a small, fixed-price job. See our Power Automate service or the project write-up.