Add Rows to Excel in Power Automate: JSON to Excel with PDF4me
PDF4me Excel - Add Rows is a Power Automate action that inserts a JSON object or array as new rows into an Excel workbook, in either table-based mode with automatic header matching or coordinate-based mode with exact cell positioning. Use it to write database query results, form submissions, or API responses straight into an Excel report.
What this action does
PDF4me Excel - Add Rows writes JSON Row Data into an existing workbook, matching properties to headers when Table Name is set, or landing at exact coordinates when it is left empty. Convert Numeric And Date, Date Format Pattern, Numeric Format Pattern, and Culture Name control how the inserted values are typed and formatted.
How Do I Authenticate My Power Automate Flow?
Every PDF4me action in Power Automate requires a valid connection. Create or select one that holds your PDF4me API key so the flow can authenticate Excel row-insertion requests securely.
Important Facts You Should Not Miss

Map File Content and File Name, set JSON Row Data, pick a Table Name or Insert From Row / Column, then expand Advanced parameters for type conversion and formatting.
Parameters
Required: File Content, File Name, and JSON Row Data must always be provided. Table Name and Excel Row Number apply only to table-based insertion. Insert From Row and Insert From Column apply only to coordinate-based insertion, and are rejected if Table Name is also set.
| Parameter | Required | What it does | Example |
|---|---|---|---|
| File Content | Required | Base64 content of the source Excel workbook, mapped from SharePoint, OneDrive, or another prior action. | [File Content from Get File] |
| File Name | Required | Excel filename including extension (.xlsx or .xls), used for processing and output identification. | data.xlsx |
| JSON Row Data | Required | JSON object or array of objects to insert. Each object becomes one row, property names match table headers in table mode. | [{"Name":"John","Age":30}] |
| Worksheet Name | Optional | Name of the worksheet to insert into. Defaults to Sheet1 if left blank. | Sheet1 |
| Table Name | Optional | Name of an Excel table for table-based insertion. Leave empty to use coordinate-based insertion instead. | SalesTable |
| Excel Row Number | Conditional | 1-based position within the table, table mode only. Ignored in coordinate mode. | 5 |
| Insert From Row | Conditional | 1-based worksheet row where insertion starts, coordinate mode only. Errors if Table Name is also set. | 10 |
| Insert From Column | Conditional | 1-based worksheet column where insertion starts, coordinate mode only. Errors if Table Name is also set. | 3 |
| Convert Numeric And Date | Optional | Enables automatic conversion of JSON numbers to Excel numeric values and date-like strings to Excel dates. Default true. | true |
| Date Format Pattern | Optional | Excel date format applied when Convert Numeric And Date is enabled. Default yyyy-MM-dd. | MM/dd/yyyy |
| Numeric Format Pattern | Optional | Excel numeric format applied when Convert Numeric And Date is enabled. Default N2. | #,##0.00 |
| Ignore Null Values | Optional | Skips inserting a value for any JSON property that is null when enabled. Default false, which inserts nulls as empty cells. | false |
| Ignore Attribute Titles | Optional | Makes JSON property name matching case-insensitive against table headers when enabled. Default false. | true |
| Culture Name | Optional | Culture code used to parse incoming date and number strings before conversion. Default en-US. | en-US |
Output Fields
| Field | Type | What it contains |
|---|---|---|
document | Base64 | The Excel workbook with the new rows inserted. |
Success | Boolean | true if insertion completed, false if the action failed. |
ErrorMessage | String | Error description, null when Success is true. |
Errors | Array | Detailed error objects with Code and Message, empty when Success is true. |
What Do the Common Error Messages Mean?
| Error Message | Cause | Solution |
|---|---|---|
| JSON input is required | JSON Row Data is null or empty. | Provide a valid JSON object or array. |
| Invalid JSON structure | Malformed JSON syntax. | Fix the JSON formatting before mapping it in. |
| Worksheet not found | The named worksheet does not exist in the workbook. | Use an existing worksheet name or leave it blank for the first sheet. |
| Table not found | The named table does not exist, table mode only. | Use an existing Excel table name. |
| ExcelRowNumber must be greater than 0 | Excel Row Number is less than 1 in table mode. | Set Excel Row Number to 1 or higher. |
| InsertFromRow and InsertFromColumn are ignored when TableName is specified | Coordinate parameters were set alongside Table Name. | Clear Table Name for coordinate mode, or clear the coordinate fields for table mode. |
| No valid data found in JSON input | JSON Row Data was an empty array or had no parseable objects. | Provide at least one valid object in the JSON payload. |
How Do I Set Up Add Rows in Power Automate?
- Add PDF4me → Excel - Add Rows to your Power Automate flow.
- Map File Content and File Name from a previous action (SharePoint, OneDrive, or a database connector).
- Set JSON Row Data to your object or array of objects.
- Set Table Name for table-based insertion, or leave it blank and set Insert From Row / Insert From Column for coordinate-based insertion.
- Expand Advanced parameters to enable Convert Numeric And Date and set formatting. Run the flow, the updated workbook returns as document.
Typical Setups
Workflow ExamplesCommon Power Automate flow patterns using Add Rows.
- A scheduled trigger runs a SQL query to fetch the day's sales records.
- The results are converted into a JSON array matching the sales table's column headers.
- Get File retrieves the sales report template with a Table Name of "DailySales".
- Add Rows inserts the array with Convert Numeric And Date enabled and Numeric Format Pattern set for currency.
- The updated report is emailed to sales managers.
- A Microsoft Forms submission triggers the flow.
- The scenario builds a JSON object from the submitted answers.
- Get File retrieves the response log workbook.
- Add Rows inserts at the next open row using Insert From Row and Insert From Column, with Table Name left blank.
- The updated log is saved back to SharePoint.
- A weekly trigger queries new opportunities from a CRM connector.
- The records are converted into a JSON array with flexible field names.
- Add Rows inserts into an "Opportunities" table with Ignore Attribute Titles enabled for case-insensitive header matching.
- The populated report is distributed to the sales team.
Practical Tips
Cheat Sheet
| Field | Value |
|---|---|
| Action | Excel - Add Rows |
| Mode switch | Table Name set = table mode, empty = coordinate mode |
| JSON Row Data shape | Single object or array of objects |
| Default worksheet | Sheet1 |
| Type conversion toggle | Convert Numeric And Date = true (default) |
| Default date/numeric format | yyyy-MM-dd / N2 |
| Default culture | en-US |
| Output | document (Base64 workbook) + Success + ErrorMessage + Errors |
Common Questions
Industry Use Cases & Applications
- Sales & Marketing
- Finance & Accounting
- Human Resources
- Operations & Manufacturing
- Sales Pipeline Reports: Insert CRM opportunity data into Excel sales pipelines
- Lead Tracking: Add new leads from forms to Excel tracking sheets
- Campaign Analytics: Populate marketing campaign results from analytics APIs
- Customer Lists: Export customer data from databases to Excel customer lists
- Transaction Logs: Insert daily financial transactions into Excel ledgers
- Expense Reports: Add employee expense submissions to Excel expense reports
- Budget Tracking: Populate actual spending data into budget vs. actual templates
- Invoice Generation: Insert invoice line items into Excel invoice templates
- Employee Records: Add new hire information to Excel employee databases
- Attendance Tracking: Insert daily attendance data into Excel timesheets
- Payroll Processing: Populate hours worked into Excel payroll templates
- Performance Data: Add review scores and metrics to Excel performance trackers
- Inventory Updates: Insert stock level changes into Excel inventory sheets
- Production Logs: Add production run data to Excel manufacturing logs
- Quality Metrics: Populate quality control results into Excel QC reports
- Maintenance Records: Insert equipment maintenance data into Excel service logs