Skip to main content

Update Rows in Excel - Data Modifier for Make

PDF4me Update Rows in Excel is a Make module that modifies existing rows in an .xlsx or .xls workbook using a JSON array, matching property names to column headers automatically. Use it to sync database changes, refresh dashboards, or update CRM records in Excel without inserting or deleting rows.

What this module does

PDF4me Update Rows in Excel modifies cells in existing rows using a JSON array, without inserting or deleting rows. Property names in each JSON object are matched to column headers automatically, with optional automatic conversion of strings to numbers or dates, culture-specific parsing, custom date/numeric formatting, and control over how null values are handled.

Related Blog Posts
No blog post yet for this feature — coming soon.
In the meantime, browse the PDF4me blog for tutorials and workflows across every platform.
Visit the blog

How Do I Authenticate My Make Scenario?

Every PDF4me module in Make requires a valid Connection. Create or select one that holds your PDF4me API key so the scenario can authenticate Excel row updates securely.

Important Facts You Should Not Miss

In-place updates only
The module never inserts or deletes rows. It only overwrites cells in rows that already exist, starting at Start Row and matching columns by header name.
Json Input must be an array
Even a single-row update must be wrapped in array brackets: [{"Name":"John"}]. A bare object without brackets causes an error.
Type conversion is optional, not automatic
Convert Numeric And Date must be set to Yes for Date Format, Numeric Format, and Culture Name to take effect. Left at No, values are written as-is.
Make PDF4me Excel Update Rows in a worksheet module configured with Connection, File set to Map with File Name and Document mapped, Worksheet Name Sheet1, Json Input, Start Row 2, Convert Numeric And Date set to Yes, Date Format yyyy-MM-dd, Numeric Format N2, Ignore Attribute Titles No, Ignore Null Values No, and Culture Name en-US

Set File to Map, wire File Name and Document from the prior module, then supply Json Input and the row/type-conversion options.

Parameters

Required: Connection, File Name, Document, and Json Input must be provided. Json Input must be a JSON array of objects, single objects are not supported. All other parameters are optional and use module defaults if left blank.

ParameterRequiredWhat it doesExample
ConnectionRequiredPDF4me API connection. Click Add and paste your API key if connecting for the first time.My PDF4me Excel connection
File NameRequiredFilename of the Excel workbook including extension, used for output file identification.sales_data.xlsx
DocumentRequiredExcel file buffer mapped from a preceding module such as Dropbox Download a File or Google Drive.[Buffer from Get File]
Worksheet NameOptionalName of the worksheet to update. Defaults to Sheet1 if left blank. Worksheet matching is case-sensitive.Sheet1
Json InputRequiredJSON array of objects, one object per row to update. Property names are matched to column headers automatically.[{"Product":"Widget","Price":55.99}]
Start RowOptional1-based row number where updates begin. Row 1 is usually the header row, so data updates typically start at row 2.2
Start ColumnOptional1-based column offset used for header matching, allows skipping initial columns.1
Convert Numeric And DateOptionalYes converts JSON strings to Excel numbers and dates using Date Format and Numeric Format. No writes values as-is.Yes
Date FormatOptionalExcel date format pattern applied when Convert Numeric And Date is Yes.yyyy-MM-dd
Numeric FormatOptionalExcel numeric format pattern applied when Convert Numeric And Date is Yes.N2
Ignore Attribute TitlesOptionalYes makes JSON property name matching case-insensitive against column headers.No
Ignore Null ValuesOptionalYes skips updating any cell whose JSON value is null, preserving the existing cell content. No overwrites it as empty.No
Culture NameOptionalCulture code used to parse incoming date and number strings before conversion, important for international data.en-US

Output Fields

FieldTypeWhat it contains
NameStringOutput Excel filename, matches the File Name input.
Doc DataBufferThe Excel document with the modified rows, in buffer format, ready to upload or attach.

How Do I Set Up Update Rows in Make?

  1. Add PDF4meUpdate Rows in a worksheet to your Make scenario.
  2. Select Connection (or click Add to create one with your PDF4me API key).
  3. Under File, choose Map and wire File Name and Document from a previous module (Dropbox, Google Drive, or HTTP).
  4. Set Worksheet Name if it is not Sheet1.
  5. Build the Json Input array so each object's property names match your column headers, one object per row to update.
  6. Set Start Row to the first data row (usually 2 if row 1 holds headers).
  7. Enable Convert Numeric And Date and set Date Format / Numeric Format if your JSON values are strings that should become Excel numbers or dates. Run the scenario, the updated workbook returns as a buffer.

Typical Setups

Workflow ExamplesCommon Make scenario patterns using Update Rows in Excel.
Scheduled database-to-Excel sync
  1. A scheduled trigger runs on a fixed interval to fetch records changed since the last sync.
  2. A SQL query or API call formats the changed records into a JSON array matching the worksheet's column headers.
  3. Get File retrieves the master Excel report from Dropbox or Google Drive.
  4. Update Rows writes the fresh values starting at Start Row 2, with Convert Numeric And Date enabled.
  5. The updated workbook is uploaded back to the same location, replacing the previous version.
CRM opportunity refresh
  1. A webhook fires when a CRM opportunity record is updated.
  2. The scenario builds a JSON object with the updated stage, amount, and close date for that opportunity.
  3. Get File retrieves the opportunities tracking workbook.
  4. Update Rows modifies the matching row, with Ignore Attribute Titles set to Yes for flexible header matching.
  5. The refreshed workbook is saved back to shared storage for the sales team.
Inventory level refresh
  1. An inventory system event fires when stock counts change for one or more SKUs.
  2. The scenario formats the changed SKUs and quantities into a JSON array.
  3. Get File retrieves the master inventory workbook from SharePoint.
  4. Update Rows writes the current stock levels, with Ignore Null Values set to Yes to preserve unrelated columns.
  5. The updated inventory workbook is saved back to SharePoint for warehouse visibility.

Practical Tips

Json Input must be an array, always
Even a single-row update needs array brackets. A bare object like {"Name":"John"} errors, wrap it as [{"Name":"John"}].
Start Row usually means row 2
Row 1 typically holds column headers. Set Start Row to 2 to update the first data row without overwriting headers.
Type conversion needs the toggle on
Date Format, Numeric Format, and Culture Name only apply when Convert Numeric And Date is Yes. Left at No, JSON values are written verbatim as text.
Header matching is case-sensitive by default
If your JSON property names differ in case from the column headers, set Ignore Attribute Titles to Yes rather than renaming every header.
Null values overwrite by default
Without Ignore Null Values set to Yes, a null in your JSON blanks the existing cell. Enable it when you only want to update the fields you actually send.
Culture Name affects parsing, not just display
Set Culture Name to match how your source data formats dates and decimals (e.g. de-DE for comma decimals), otherwise conversion can misread values.

Cheat Sheet

FieldValue
ModuleUpdate Rows in a worksheet
ConnectionPDF4me API key
Default worksheetSheet1
Json Input shape[{"Column":"Value"}, ...] (array, always)
Typical Start Row2 (skips header row)
Type conversion toggleConvert Numeric And Date = Yes
Default date/numeric formatyyyy-MM-dd / N2
Default cultureen-US

Common Questions

Does Update Rows insert or delete rows?+
No. The module only modifies cells in rows that already exist in the worksheet. It never inserts new rows or deletes existing ones. Use a different PDF4me Excel module if you need to add or remove rows.
What format must Json Input be in?+
Json Input must be a JSON array of objects, even when updating a single row. A bare object such as {"Name":"John","Age":31} without array brackets causes an error, it must be wrapped as [{"Name":"John","Age":31}].
How does header matching work?+
Each object in the Json Input array has its property names matched against the column headers in the target worksheet. Rows are updated sequentially starting from Start Row, with Start Column controlling any header offset.
What happens to null values in the JSON?+
By default, a null value in the JSON overwrites the corresponding cell as empty. Set Ignore Null Values to Yes to skip updating any cell whose JSON value is null, which preserves the existing content in that cell.
Can I control how dates and numbers are formatted?+
Yes. When Convert Numeric And Date is set to Yes, Date Format and Numeric Format apply Excel formatting patterns such as yyyy-MM-dd or N2, and Culture Name (for example en-US or de-DE) controls how the incoming strings are parsed before conversion. See <a href="https://learn.microsoft.com/en-us/dotnet/standard/base-types/standard-numeric-format-strings" target="_blank" rel="noopener noreferrer">Microsoft's numeric format string reference</a> and <a href="https://learn.microsoft.com/en-us/dotnet/standard/base-types/custom-date-and-time-format-strings" target="_blank" rel="noopener noreferrer">custom date format reference</a> for the full pattern syntax.

Industry Use Cases & Applications

  • CRM Opportunity Updates: Modify opportunity rows in Excel with latest status, amounts, and close dates
  • Campaign Performance Refresh: Update campaign metrics rows with current impressions, clicks, conversions
  • Lead Score Updates: Refresh lead scoring data in Excel tracking sheets from marketing automation
  • Customer Database Sync: Update customer record rows with latest contact info and purchase history
  • Sales Forecast Updates: Modify forecast rows with updated pipeline data and win probabilities

Same Task on Other Platforms

Get Help