Skip to content

Excel Read Bulk

ExcelReadBulk reads the rows of a sheet in an Excel spreadsheet file without requiring the columns to be defined at design time.

The row specified by the Header row property (the first row, by default) is treated as the header row. The header row and any rows above it are not returned as data. Each of the rows following the header row is returned one at a time in the Row execution path as a list of text values in the order in which the columns appear in the sheet.

Use ExcelReadHeader to read the column names of the sheet.


The file path of the Excel file to read.

A regular expression that filters the sheets that are read e.g. “^invoice” will only read data from sheets that starts with “invoice” - therefore, “invoice123” will be read, but “fooinvoice” will be ignored.

If not specified, all sheets in the spreadsheet will be read.

The row number (1-based) of the header row. Any rows above the header row are skipped, and only the rows following the header row are returned as data. Use this property when the column names are not in the first row of the sheet, e.g. when the sheet starts with a title or other rows that precede the column names.

The default value is 1. When multiple sheets are read, the same header row is used for each sheet.

An exception is thrown if the header row is beyond the last row of a sheet.


Executed once for each data row (i.e. each row following the header row) in the sheet. It contains a single object with the following property:

  • Content: a list of text values containing the cell values of the row, in column order.

All cell values are returned as text, regardless of how the cells are formatted in the spreadsheet.

Excel Read Header

Office Open XML file format