Marcin JędrzejakPower Automate Developer
From shared inbox
to organized data.
I build Microsoft 365 automations that route email to the right folders and turn CSV attachments into consolidated Excel reports. I connect Power Automate with Microsoft Graph and Office Scripts.
Open to an employment contract or B2B — remote or hybrid.
- Receive CSV attachmentsOutlook · shared mailbox
- Normalize and merge dataLine endings · one header · no empty rows
- Process in batchesUp to 2,000 rows per batch
- Update the master workbookOffice Scripts · Excel · SharePoint
- Send a completion messageMicrosoft Teams
In practice
Concrete rules.
Practical automation.
The projects below show how I combine cloud flows, APIs and Excel scripts to automate repeatable operational tasks.1
- 2,000
- rows per batch passed to an Excel script in the data consolidation flow.
- CSV → Excel
- attachment data normalized and merged into a workbook stored in SharePoint.
- Graph API
- current message categories used to select a destination folder.
Projects
Two operational tasks.
Two concrete solutions.
Explore the problem, the automation and a technical decision behind each project. Names and diagrams are generalized for this portfolio.2
Outlook · Office Scripts · SharePoint
CSV attachments to a consolidated Excel report
- The problem
- Data arrives in email attachments. Preparing a consolidated report requires opening files, combining their contents and cleaning up repeated headers and empty rows.
- What I built
- A cloud flow selects CSV attachments from a shared mailbox, normalizes line endings and merges the data with a single header. It passes batches to an Office Script that updates a workbook in SharePoint, then sends a completion message in Teams.
- Technical decision
- Data is passed to the script in batches of up to 2,000 rows. Normalization and empty-line filtering happen before the batch loop.
- What changes
- The attachment-to-workbook process replaces manual file merging with a repeatable sequence of data preparation and batch updates.
- Outlook
- CSV
- Office Scripts
- Excel Online
- SharePoint
- Teams
- Receive CSV attachmentsOutlook · shared mailbox
- Normalize and merge dataLine endings · one header · no empty rows
- Process in batchesUp to 2,000 rows per batch
- Update the master workbookOffice Scripts · Excel · SharePoint
- Send a completion messageMicrosoft Teams
How it works
The decisions
behind the flow.
A useful automation needs more than connected actions. These are the implementation choices illustrated by the two projects.
Prepare the data
Normalize line endings, keep a single header and remove empty rows before processing CSV data.
Process in batches
Split the input into batches with an explicit size and loop termination condition.
Reach for an API
Use Microsoft Graph to read the message fields needed by the routing logic.
Set rule priorities
Check selected categories across the category list before falling back to the first category.
Connect flows and scripts
Use Power Automate to coordinate the process and Office Scripts to update Excel data.
Report completion
A Teams card is configured at the end of the CSV processing path to inform the owner.
Skills
Tools connected
to a concrete task.
Power Automate at the centre, with the APIs, data transformations and Microsoft 365 services used in these projects.
Cloud flows
Email triggers, conditions, loops and variables that coordinate operational tasks.
Microsoft Graph
HTTP requests to retrieve message categories and selected email fields.
JSON and expressions
Parse API responses, work with arrays and define category priorities.
CSV processing
Normalize text, merge attachments and filter empty data lines.
Office Scripts
Connect cloud flows to Excel scripts and pass data in batches.
SharePoint and Excel
Workbooks in document libraries as the destination for consolidated data.
Shared mailboxes
Attachment selection and category-based routing to destination folders.
Microsoft Teams
Adaptive Cards for completion messages at the end of a processing path.
Process
From a repetitive task
to a clear process.
1. Understand the task
Identify where messages and files come from, who uses the result and which steps are repetitive.
2. Define the rules
Describe the input format, destination, category priorities and behavior when no rule matches.
3. Build and verify
Check transformations, batch boundaries and routing with representative input, including empty data and multiple categories.
4. Make it understandable
Describe the steps, dependencies and limitations so the process can be understood and maintained.
Before and after
From attached files
to a consolidated workbook.
The same data preparation task, performed manually or coordinated by a cloud flow.
| By handMailbox and Excel | With Power AutomateCloud flow and Office Scripts | |
|---|---|---|
| Combining attachments | Open and copy each file | Select and merge CSV data |
| Headers and empty rows | Clean up by hand | One header, empty rows filtered |
| Writing to Excel | Paste data into the workbook | Office Script · batches up to 2,000 rows |
| Destination | Manually selected workbook | Configured workbook in SharePoint |
| Completion message | Check and tell the team | Teams card at the end of processing |
- Batch size is a setting of the illustrated implementation, not a platform limit or a measured throughput guarantee.
- Descriptions are based on existing operational flows. Project names, category names and diagrams are generalized; company identifiers and source data are omitted. Diagrams illustrate the logic, not recorded run results.
Microsoft, Power Automate, Power Platform, Microsoft Graph, Office Scripts, SharePoint, Teams, Outlook and Excel are trademarks of the Microsoft group of companies.