Skip to content

Workbook Splitter

Splits a workbook into one file per sheet, or one file per distinct value of a chosen column.

One workbook into many files: one per sheet, or one per distinct value of a column — the “send each branch only their own rows” case. The header row is repeated on every piece, so each file opens as a complete table rather than a headless block.

🔒 Runs entirely in your browserexcelsplitbatchspreadsheet

Drop one .xlsx, .xlsm or .ods

Split into a zip of files. Nothing is uploaded.

Splitting by column value keeps the header row on every file, so each one opens as a complete table rather than a headless block of rows.

How to use it

  1. Choose per sheet or per column value

    The column picker shows how many distinct values it found, which tells you how many files you are about to make.

  2. Preview a part before committing

    Click any part to see its rows. A part with one unexpected row usually means a stray space in the grouping column.

  3. Pick .xlsx or .csv and download the zip

    Every part is named after its sheet or its column value, so the zip sorts sensibly.

Common questions

What if a value contains a slash?

Characters that cannot appear in a filename are replaced, so a value like “A/B” becomes a safe name rather than a nested folder or a failed write.

Can it split by more than one column?

Not here. Add a helper column in the sheet that joins the values you want to group by, then split on that — which is also the version you can check before running.

Why is the header repeated in every file?

Because a split file that arrives without one is a block of rows nobody can read. If you are feeding a script rather than a person, the CSV output with the header turned off is the shape you want.

Feed it from

Next

These accept what this tool produces, so the result can go straight in.