AnyTool
Your files never leave your device. All processing happens locally in your browser.

How do I split an Excel file into multiple files?

Open AnyTool Split Excel, drop in your .xlsx (or .xlsm) workbook, and choose how to split: one file per worksheet, every N rows, grouped by a column’s value, by target file size, or at each blank row. It writes a real .xlsx for each part — keeping cell formatting, number formats, column widths and merged cells — then bundles them into a single ZIP. Everything runs in your browser with ExcelJS, so the workbook never leaves your device.

  • Five split modes: by sheet, by row count, by column value, by size, or at blank rows
  • Outputs real .xlsx files — formatting, number formats, widths and merges preserved
  • Optional header row repeated on every output part
  • Downloads all parts as one ZIP, or each file individually
  • 100% in your browser via ExcelJS — no upload, no signup, works offline

What is

Splitting an Excel File

Splitting an Excel file means dividing one workbook into several smaller .xlsx files — for example one file per worksheet, fixed-size row chunks, or a separate file for each unique value in a column (such as region, date or category). Unlike server-based splitters that upload your spreadsheet, a client-side splitter parses and rewrites the workbook entirely in the browser so the data stays private.

Converters

Related terms

Split by sheetSplit by column valueSplit CSVXLSX

Frequently Asked Questions

Yes — pick “By Column”, choose the column, and AnyTool makes one .xlsx per unique value.

In Split Excel, select the “By Column” mode and choose the column to group on (for example a region, date or category column). The tool scans every row, groups them by the value in that column, and writes a separate .xlsx file for each unique value, optionally repeating the header row in each one. The files are bundled into a ZIP for a single download.

Choose “By Row Count”, set the rows per file, and it chops the sheet into equal chunks.

Use the “By Row Count” mode, pick the worksheet, and enter how many rows each file should contain — say 1,000. AnyTool slices the data into that many rows per part, keeps the header on each chunk if you want, and exports every part as its own .xlsx inside a ZIP. There is also a “By Size” mode that targets a maximum megabytes per file instead.

No. The whole split runs in your browser with ExcelJS, so the workbook is never uploaded.

AnyTool Split Excel reads, splits and rewrites your workbook locally using the ExcelJS library in JavaScript. Nothing is sent to a server, there is no tracking, and the tool keeps working offline after the first load — a key difference from upload-based splitters like Aspose, TinyWow or Gigasheet.

Yes — cell styles, number formats, column widths and merged cells are carried into each output file.

Each output part is a real .xlsx workbook, not a flattened CSV. AnyTool copies cell values along with their styles and number formats, preserves column widths, and re-applies merged-cell ranges when splitting by sheet, so the resulting files look like the original — just smaller.

Detailed Explanation

Methodology

How Split Excel Works

AnyTool Split Excel reads your workbook entirely in the browser with the ExcelJS library. The .xlsx is loaded with the File API into an ArrayBuffer, parsed into worksheets, rows and styles, and then re-emitted as one or more new .xlsx files depending on the chosen mode. “By Sheet” writes each worksheet to its own workbook, carrying over cell values, styles, number formats, column widths and merged-cell ranges. “By Row Count” slices a sheet into fixed-size chunks; “By Column” buckets rows by the value in a chosen column; “By Size” calibrates a first chunk to hit a target megabytes-per-file; and “At Blank Row” starts a new file whenever an empty row is reached. Every part is generated as a real workbook and zipped together with JSZip for a single download.

  • Workbook parsed and rewritten in-browser with the ExcelJS library
  • Five modes: by sheet, row count, column value, target size, or blank rows
  • Outputs are real .xlsx files, not flattened CSV
  • Cell styles, number formats, widths and merges are preserved
  • Parts are bundled into one ZIP with JSZip; no server round-trip
Use Cases

When to Split a Workbook

Splitting is most useful when one large file needs to become many targeted ones: separating a multi-tab workbook into one file per worksheet, breaking a 100,000-row export into 1,000-row batches for an import limit, or producing a separate file per region, date or category by grouping on a column. An optional header row is repeated in each output so every file stays self-describing, and a naming pattern with {filename} and {part} placeholders controls the resulting file names. A blank-row mode also splits report exports that already use empty rows as section separators.

  • One file per worksheet for multi-tab workbooks
  • Fixed row-count batches to satisfy import or upload limits
  • One file per unique column value (region, date, category)
  • Optional repeated header keeps every output self-describing
  • Custom {filename}/{part} naming pattern for output files
Privacy & Security

Privacy and Limits

Because the split runs locally, the workbook is never uploaded, there is no account or tracking, and the tool keeps working offline after first load — unlike upload-based splitters such as Aspose, TinyWow or Gigasheet that process files on a server. Practical limits apply for browser memory: inputs are capped around 100 MB, column-value splitting is limited to 500 unique groups to avoid freezing the tab, and legacy .xls (BIFF) files must be saved as .xlsx first since the engine targets the modern Office Open XML format.

  • Nothing is uploaded — splitting happens entirely in your browser
  • No signup, no tracking; works offline after first load
  • Input cap around 100 MB; column mode limited to 500 groups
  • Legacy .xls must be re-saved as .xlsx (.xlsm also supported)
Splitting Excel: in-browser (AnyTool) vs typical online splitters
CapabilityAnyToolTypical online splitters
ProcessingRuns in your browserUpload to a server
PrivacyWorkbook never leaves your deviceFile stored, deleted later
Split modesSheet, rows, column value, size, blank rowOften sheet or rows only
Formatting keptStyles, number formats, widths, mergesFrequently lost or flattened
OutputReal .xlsx files zipped togetherVaries; sometimes CSV
Works offlineYes (PWA)No
Cost / signupFree, no signupOften gated or ad-heavy

AnyTool splits the workbook locally with ExcelJS and uploads nothing.