Update Rows in Excel using n8n action
PDF4me Update Rows in Excel modifies existing worksheet rows directly from n8n. Feed one or more JSON objects (always wrapped in an array) and PDF4me matches properties to column headers, applies automatic type conversion, and walks sequentially through the worksheet starting at the row you choose. Perfect for syncing SQL results, refreshing CRM snapshots, or patching approval status columns without inserting new rows.
Setup
Add the PDF4me “Update Rows” node to your n8n workflow and configure the required parameters. For initial setup instructions, see our n8n Integration Guide.
Prerequisites
- PDF4me API credentials
- n8n workflow access
Configuration
- Add the PDF4me node to the workflow
- Select the "Update rows" action
- Provide the Excel source, JSON array, and update offsets

Parameters
Important: Parameters marked with an asterisk (***) are required.
Json Datamust always be a JSON array (wrap single rows in[]).
| Parameter | Type | Description | Example |
|---|---|---|---|
| Input Data Type*** | String | Excel source selector. Options: Binary Data, Base64 String, URL. | Binary Data |
| Input Binary Field*** | Binary | Required when Input Data Type = Binary Data. Reference upstream binary. | {{ $binary.data }} |
| Base64 Document Content*** | String | Required when Input Data Type = Base64 String. Provide base64 workbook. | UEsDBBQAAAA... |
| Document URL*** | String | Required when Input Data Type = URL. Public link to the workbook. | https://files.example.com/report.xlsx |
| File Name*** | String | Processing/display name of the workbook (with extension). | inventory.xlsx |
| Json Data*** | String | JSON array of objects. Each object updates one row sequentially. | [{"SKU":"A-100","Stock":45}] |
| Worksheet Name | String | Target worksheet. Empty uses the first sheet. | Inventory |
| Start Row | Number | 1-based worksheet row to start updating (headers usually row 1). | 2 |
| Start Column | Number | 1-based column offset used for header alignment. | 1 |
| Convert Numeric And Date | Boolean | Auto-convert numeric/date strings into Excel values. Default true. | true |
| Date Format | String | Excel date format applied when conversion is enabled. | yyyy-MM-dd |
| Numeric Format | String | Excel numeric format when conversion is enabled. | #,##0.00 |
| Ignore Null Values | Boolean | When true, nulls leave existing cell values untouched. | true |
| Ignore Attribute Titles | Boolean | Case-insensitive header matching. Default false. | true |
| Culture Name | String | Culture for parsing numbers/dates. Empty = invariant. | en-US |
| Binary Data Output Name*** | String | Name of the output binary slot storing the patched workbook. | document |
Output
Output Parameters
| Parameter | Type | Description | Example |
|---|---|---|---|
| fileName | String | Excel document filename with rows updated - The name of the output Excel document file after row updates | excel_updated.xlsx |
| fileSize | Number | File size in bytes - The size of the Excel document in bytes after row updates | 212810 |
| success | Boolean | PDF4me operation status - Boolean flag indicating the success or failure of the row update process. PDF4me returns true for successful operations and false for any errors | true |
| originalFileName | String | Original Excel document filename - The name of the input Excel document file | myExcelFile.xlsx |
| worksheetName | String | Worksheet name - The name of the worksheet where rows were updated | Sheet1 |
| startRow | Number | Starting row number - The 1-based row number where updates began | 1 |
| startColumn | Number | Starting column number - The 1-based column number where updates began | 1 |
| rowsUpdated | Number | Number of rows updated - The total count of rows that were successfully updated | 1 |
| convertNumericAndDate | Boolean | Numeric and date conversion status - Indicates whether automatic numeric and date conversion was enabled. true if enabled, false if disabled | true |
| dateFormat | String | Date format applied - The date format string that was applied during conversion | yyyy-MM-dd |
| numericFormat | String | Numeric format applied - The numeric format string that was applied during conversion | N2 |
| ignoreNullValues | Boolean | Null value handling - Indicates whether null values were ignored. true if nulls were ignored (preserved existing values), false if nulls were written | false |
| ignoreAttributeTitles | Boolean | Case-insensitive header matching - Indicates whether case-insensitive header matching was used. true if enabled, false if case-sensitive | false |
| cultureName | String | Culture/Locale code - Culture code used for parsing numbers and dates (e.g., "en-US", "de-DE", "fr-FR") | en-US |
| message | String | Operation message - Descriptive message indicating the result of the row update operation, including the number of rows updated and worksheet name | Successfully updated 1 row(s) in worksheet 'Sheet1' |
N8N Action Response
The PDF4me Update rows API returns a response that can be viewed in multiple formats. Choose the view that best fits your needs:
- JSON
- Table
- Schema
- Binary
JSON Response Format
The raw JSON response from the API:
[
{
"fileName": "excel_updated.xlsx",
"fileSize": 212810,
"success": true,
"originalFileName": "myExcelFile.xlsx",
"worksheetName": "Sheet1",
"startRow": 1,
"startColumn": 1,
"rowsUpdated": 1,
"convertNumericAndDate": true,
"dateFormat": "yyyy-MM-dd",
"numericFormat": "N2",
"ignoreNullValues": false,
"ignoreAttributeTitles": false,
"cultureName": "en-US",
"message": "Successfully updated 1 row(s) in worksheet 'Sheet1'"
}
]
Table View
Response data in a structured table format:
| Parameter | Value |
|---|---|
| fileName | excel_updated.xlsx |
| fileSize | 212810 |
| success | true |
| originalFileName | myExcelFile.xlsx |
| worksheetName | Sheet1 |
| startRow | 1 |
| startColumn | 1 |
| rowsUpdated | 1 |
| convertNumericAndDate | true |
| dateFormat | yyyy-MM-dd |
| numericFormat | N2 |
| ignoreNullValues | false |
| ignoreAttributeTitles | false |
| cultureName | en-US |
| message | Successfully updated 1 row(s) in worksheet 'Sheet1' |
Schema View
The data structure and types of the response:
1 item
fileName: T excel_updated.xlsx
fileSize: # 212810
success: ☑ true
originalFileName: T myExcelFile.xlsx
worksheetName: T Sheet1
startRow: # 1
startColumn: # 1
rowsUpdated: # 1
convertNumericAndDate: ☑ true
dateFormat: T yyyy-MM-dd
numericFormat: T N2
ignoreNullValues: ☑ false
ignoreAttributeTitles: ☑ false
cultureName: T en-US
message: T Successfully updated 1 row(s) in worksheet 'Sheet1'
Type Indicators:
T= String (Text)#= Number☑= Boolean[]= Array
Binary Data View
The actual Excel document file data and metadata:
data
─────────────────────────────
File Name: excel_updated.xlsx
File Extension: xlsx
Mime Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
File Size: 212.8 kB
Binary Data Access:
- n8n Binary Object:
$binary.data.data - Base64 Content: Available for direct use
- File Operations: Ready for download, email, or storage
Use Cases
- Inventory sync: Refresh stock counts pulled from ERP queries while keeping pricing and metadata untouched.
- Order or project status: Patch status, owner, or SLA columns whenever upstream systems emit updates.
- Finance adjustments: Re-write forecast or actuals rows nightly without breaking existing formulas/structure.