Excel workbooks

An Excel Workbook source converts the workbooks stored in a file datasource into Lake tables: every sheet with data becomes a table the Lake can load. This page covers how the conversion works, the columns it adds, the limits a run can hit and what its failures mean; the setup steps are on Load files.

How the sheets become tables

What a run converts depends on the layout you chose on the Tables step (How do sheets become tables?; see Group files into tables). Only the source's workbook files (.xlsx and .xlsm) are converted; other stored files are ignored.

The converted sheets are grouped like this:

LayoutWhat the run writes
Each sheetA folder for every workbook, and a folder for every sheet inside it. Every sheet stands on its own.
Union by sheet nameA folder for every sheet name, holding the same-named sheets of every workbook together as one group.
Union inside workbookA folder for every workbook, holding that workbook's sheets together as one group.
Union allOne flat set with every sheet of every workbook written together.

In the Union by sheet name layout the stored sheet files keep an uppercase .TSV extension, which is how the Lake recognises that layout.

The separate Excel source uses its own form; see Connect Excel.

Columns every sheet carries

Four columns are added in front of the sheet's own columns:

How headers and values are cleaned

What a run does with your files

Limits a run can hit

What failures mean

A failed conversion shows its message in the run's error details; see Lake troubleshooting for where to read the full text.

MessageWhat it meansWhat to do
Excel transform exceeded the 1800s limitThe conversion ran longer than the 30-minute ceiling.Split the workbook, or leave transpose off for tall sheets, then run again.
Excel transform exceeded its memory cap of {n} MiB or Excel transform failed, most likely at its memory cap of {n} MiBThe conversion needed more memory than the limit set for one transform.Split the workbook, or load fewer sheets per run, then run again.
Excel transform was killed by signal {n} (most likely out of memory)The conversion used up the memory available to it and was ended.Split the workbook into smaller ones, then run again.
Excel transform failedThe conversion stopped for another reason; the error details carry the reason.Read the details, fix what they name, then run again.
Failed to read source filesThe stored workbooks could not be read.Check the stored files on the source's Source step, then run again.
Transform produced no TSV filesThe run produced no sheets at all; usually no sheet held data.Check the workbooks: a sheet with no rows under its header produces no table.
Configured file "{name}" is not present under raw/A workbook the source expects among its stored files is missing.Add the file back on the Source step, then run again.
Transform cancelled by userThe run was stopped before it finished.Nothing from the stopped attempt is kept; run again when you are ready.
Workbook exceeds the interactive size limitA workbook uploaded in a Mind chat is larger than the 15 MB the chat allows.Upload a smaller workbook in the chat, or load large workbooks through an Excel Workbook source.

Questions, answered

Which columns does an Excel sheet table get?

Four columns come first, before the sheet's own columns: file_name, sheet_name, file_create_datetime and virtual_id. They name the workbook and the sheet a row came from, hold the workbook file's last modified time, and number the row inside its sheet from 1.

Why does my table have a column called Column_7?

The header cell at that position in the sheet is blank, so the column is named after its position: Column_<n>. Rename it on the table's Columns step if you like; see Configure a table.

Why did line breaks and tabs in my cells become spaces?

Every header and value is cleaned before it is written: newlines, tabs and carriage returns become spaces, and the text is trimmed. A value that spanned several lines arrives on one line.

Does the conversion change my original workbooks?

No. The run reads the stored workbook files and writes the converted sheets beside them; the workbook files themselves are not changed and stay in the source's file list. See Stored files.

What happens to my tables when a run fails?

The source keeps its previous converted set, so your tables keep the data from the last good conversion; a successful run replaces the whole set. Fix the cause, then run again.

Why did my run end at the time limit?

One conversion pass has 30 minutes (1800 seconds). Very large workbooks, and tall sheets converted with Transpose table data on, can pass it; the run then stops with Excel transform exceeded the 1800s limit. Split the workbook, or leave transpose off, and run again.

Why is one of my sheets missing from the Lake?

A sheet with no content, or with a header row but no rows under it, produces no table. A chart sheet is skipped too. Give the sheet data rows and run again.

What does "Transform cancelled by user" mean?

The conversion was stopped before it finished. Nothing from the stopped attempt is kept; the previous converted set stays. See Run, stop and troubleshoot loads for how loads are stopped.

Will a busy moment make my Excel run fail?

No. The platform converts a few workbooks at a time; a run that arrives while others are converting waits for its turn instead of failing.