Skip to main content

Add rows to Excel worksheet using n8n action

PDF4me Add Rows to Excel inserts JSON payloads into any worksheet directly from your n8n workflow. Feed Excel binaries from previous nodes (SharePoint, S3, email, webhooks) or public URLs, then map JSON arrays into tables or exact coordinates with automatic header matching, data-typing, formatting, and localization. Automate database exports, sales reports, CRM syncs, or API-driven dashboards without touching Excel manually.

Setup

Add the PDF4me “Add 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

  1. Add the PDF4me node to the workflow
  2. Select the "Add rows to Excel worksheet" action
  3. Provide the Excel source, JSON payload, and insertion parameters
Add Rows to Excel

Parameters

Complete list of parameters for the Add Rows action.

Important: Parameters marked with an asterisk (***) are required. Switching between table mode (Table Name) and coordinate mode (Insert From Row/Column) changes which parameters are used.

ParameterTypeDescriptionExample
Input Data Type***StringExcel source selector. Options: Binary Data, Base64 String, URL. Determines which field below is required.Binary Data
Input Binary Field***BinaryBinary Excel input when Input Data Type = Binary Data. Reference previous node output ({{ $binary.data }}). Supports .xlsx/.xls.{{ $binary.data }}
Base64 Document Content***StringBase64 Excel payload when Input Data Type = Base64 String. Provide the encoded workbook string.UEsDBBQAAAA...
Document URL***StringPublic HTTP(S) URL when Input Data Type = URL. PDF4me downloads the workbook before inserting rows.https://files.example.com/data.xlsx
File Name***StringLogical file name (with extension) used for processing and returned binary naming.sales.xlsx
Json Input***StringJSON array or single object to insert. Provide as stringified JSON; arrays create multiple rows.[{"Name":"Ana","Amount":1200}]
Worksheet NameStringTarget worksheet. Empty uses the first sheet. Case-sensitive.Sheet1
Table NameStringProvide to enable table mode (header matching). Empty switches to coordinate mode.Opportunities
Excel Row NumberNumberTable mode only. 1-based row index inside the table where insertion begins.2
Insert From RowNumberCoordinate mode only. 1-based row to start inserting JSON data.10
Insert From ColumnNumberCoordinate mode only. 1-based column to start inserting JSON data. A=1, B=2, etc.3
Convert Numeric And DateBooleanAuto-detect numbers/dates and apply Excel value types + formatting. Default true.true
Date FormatStringExcel date format when conversion is enabled.MM/dd/yyyy
Numeric FormatStringExcel numeric format when conversion is enabled.#,##0.00
Ignore Null ValuesBooleanSkip JSON properties with null when inserting. Default false.true
Ignore Attribute TitlesBooleanCase-insensitive header matching in table mode. Default false.true
Culture NameStringCulture for parsing numbers/dates (en-US, de-DE, etc.).en-US
Binary Data Output Name***StringName of the binary property that will hold the updated workbook for downstream nodes.document

Output

Output Parameters

ParameterTypeDescriptionExample
fileNameStringExcel document filename with rows added - The name of the output Excel document file after row insertionexcel_with_rows.xlsx
fileSizeNumberFile size in bytes - The size of the Excel document in bytes after row insertion212814
successBooleanPDF4me operation status - Boolean flag indicating the success or failure of the row insertion process. PDF4me returns true for successful operations and false for any errorstrue
originalFileNameStringOriginal Excel document filename - The name of the input Excel document filemyExcelFile.xlsx
worksheetNameStringWorksheet name - The name of the worksheet where rows were addedSheet1
insertFromRowNumberStarting row number - The 1-based row number where insertion began (coordinate mode)1
insertFromColumnNumberStarting column number - The 1-based column number where insertion began (coordinate mode)1
rowsAddedNumberNumber of rows added - The total count of rows that were successfully inserted1
tableNameStringTable name used - The name of the table used for insertion (table mode). null if coordinate mode was usednull
excelRowNumberNumberExcel row number in table - The 1-based row index inside the table where insertion began (table mode)1
convertNumericAndDateBooleanNumeric and date conversion status - Indicates whether automatic numeric and date conversion was enabled. true if enabled, false if disabledtrue
dateFormatStringDate format applied - The date format string that was applied during conversionyyyy-MM-dd
numericFormatStringNumeric format applied - The numeric format string that was applied during conversionN2
ignoreAttributeTitlesBooleanCase-insensitive header matching - Indicates whether case-insensitive header matching was used. true if enabled, false if case-sensitivefalse
ignoreNullValuesBooleanNull value handling - Indicates whether null values were ignored. true if nulls were ignored, false if nulls were insertedfalse
cultureNameStringCulture/Locale code - Culture code used for parsing numbers and dates (e.g., "en-US", "de-DE", "fr-FR")en-US
messageStringOperation message - Descriptive message indicating the result of the row insertion operation, including the number of rows added and worksheet nameSuccessfully added 1 row(s) to worksheet 'Sheet1'

N8N Action Response

The PDF4me Add rows to Excel worksheet API returns a response that can be viewed in multiple formats. Choose the view that best fits your needs:

JSON Response Format

The raw JSON response from the API:

[
{
"fileName": "excel_with_rows.xlsx",
"fileSize": 212814,
"success": true,
"originalFileName": "myExcelFile.xlsx",
"worksheetName": "Sheet1",
"insertFromRow": 1,
"insertFromColumn": 1,
"rowsAdded": 1,
"tableName": null,
"excelRowNumber": 1,
"convertNumericAndDate": true,
"dateFormat": "yyyy-MM-dd",
"numericFormat": "N2",
"ignoreAttributeTitles": false,
"ignoreNullValues": false,
"cultureName": "en-US",
"message": "Successfully added 1 row(s) to worksheet 'Sheet1'"
}
]

Use Cases

  • Sales & Finance Imports: Load daily CRM exports or ERP transactions straight into a shared Excel dashboard with automatic number/date formatting.
  • Operations Logging: Append IoT readings, manufacturing KPIs, or logistics updates into predefined tables while preserving workbook formulas.
  • Forms & API Capture: Take webform/webhook JSON payloads and drop them into tracking sheets without building custom scripts.

Get Help