Excel to Table
Open a workbook and read it, without opening Excel
Workbook
No workbook open
Drop an .xlsx, .xlsm or .xls file here
Choose a file to get started. It is read in this browser tab and never uploaded.
Table
| No rows match that filter. |
Reading a workbook without Excel
Someone emails you a spreadsheet and you just want to look at it. Maybe Excel is not installed, maybe it is a work laptop, maybe the file is 40 MB and you would rather not wait. Dropping it here renders the sheet as a table you can sort and filter, and the file never leaves the browser tab.
Reading a workbook is less obvious than it sounds, because a cell rarely contains what it displays. A date is stored as a number counting days from an epoch, with a display format layered on top — read it naively and you get 46243. Take the displayed text instead and you get 8/9/26, which means August 9th or September 8th depending on the regional settings of whoever last opened it. This page reads the underlying value and shows ISO 8601, so a column of dates also sorts correctly.
Identifiers are where a viewer can genuinely mislead you. A cell stored as text is shown byte-for-byte — 8901240544102066246 and 007 appear exactly as typed. A cell stored as a number is another matter: a spreadsheet keeps only around 15 significant figures, so a 19-digit account number lost its tail when it was entered, and JavaScript, where every number is an IEEE-754 double, cannot bring it back.
So those cells get counted and named rather than quietly displayed as if nothing happened. It is the difference between a viewer that shows you the data and one that shows you the data plus what you cannot trust about it.
Opening a file here
- Choose or drop your file – .xlsx, .xlsm and the older .xls all work. The file is read in this browser tab — it is never uploaded, which is the point when the spreadsheet is a customer list.
- Pick the sheet – Workbooks usually hold more than one. Only the selected sheet is read, so a file with twenty tabs costs nothing extra to open.
- Say whether the first row is a header – On gives you an array of objects keyed by column name. Off gives you an array of arrays, which is what you want when the sheet starts straight into data or the header is merged across cells.
- Check the warning if one appears – An amber badge means at least one numeric cell held more digits than a spreadsheet can keep. It names the cells so you can go back and check them in the source.
- Sort, filter, or take it further – Sort by clicking a column, or narrow the rows with the filter box. Download hands you the sheet as CSV.
If a column of IDs matters, format it as Text in Excel before anyone types into it. Formatting an existing numeric column as Text does not restore the lost digits — it only changes how what is left is displayed, which is exactly the trap that makes people think the problem is fixed.
Four columns, four different outcomes
The first two hold identical digits. The only difference is that one cell was formatted as Text and the other as a number — and that difference decides whether the value survives.
| iccid_text | iccid_num | postcode | activated |
|---|---|---|---|
| 8901240544102066246 | 8901240544102066246 | 007 | 09/08/2026 |
Column 1 formatted as Text · column 2 as a number
| iccid_text | iccid_num | postcode | activated |
|---|---|---|---|
| 8901240544102066246 | 8901240544102066000 | 007 | 2026-08-09T00:00:00.000Z |
iccid_num flagged — digits lost before the file was saved
When this is the tool you want
Opening a file on a machine without Excel
The most common reason by a distance. A Linux box, a locked-down laptop, a phone — anywhere a licence or an install is in the way, and all you needed was to read four hundred rows.
Checking a workbook before you trust it
Sorting by a column immediately exposes the blank rows, the stray text in a numeric column and the duplicate IDs. Doing the same thing by scrolling a spreadsheet takes far longer and misses more.
Looking at a file you were not expecting
An attachment from outside your organisation is not something to open in a desktop application without thinking. Nothing here executes: macros, formulas and links are inert, and only cell values are read.
Deciding what to do with it next
Once you can see the sheet, the choice is obvious — convert it to JSON for an API, or to CSV for something that can be diffed and reviewed.
What this converter does carefully
- Sort and filter every column. Click a header to sort; the filter box narrows across all columns at once.
- Text cells are shown byte-for-byte. Leading zeros and long identifiers stored as text appear exactly as they are in the file.
- Dates are shown as ISO 8601, not serial numbers and not a locale-dependent guess.
- Lossy numeric cells are named. An amber note lists the cells where a spreadsheet already discarded digits.
- Every sheet is listed, and only the one you select is read — a workbook with thirty tabs opens as fast as one with a single tab.
- Nothing runs and nothing uploads. Macros and formulas are never executed; only the last stored value of a formula cell is read.
Questions people actually ask
Is my file uploaded anywhere?
No. The workbook is read in this browser tab and never sent to a server. That is worth knowing when the sheet is a customer list or a payroll export — the usual online viewers cannot say the same.
Why does an ID here not match the one in Excel?
Almost certainly because the cell was stored as a number. Around 15 significant figures is all a numeric cell keeps, so the digits were lost at entry rather than at display. The amber note tells you which cells are affected. Formatting the column as Text before the values are typed is the only thing that prevents it — reformatting afterwards does not bring the digits back.
Can I edit the sheet here?
No, this is a viewer. Sorting and filtering change what you see, never the file. If you want to change the data, convert it to CSV or JSON and edit that.
What happens to formulas and macros?
A formula cell shows its last calculated result, which is what the file stores alongside the formula itself. Nothing is evaluated and no macro runs — which is precisely why this is a reasonable way to look at a file you did not expect to receive.
Does it open .xls as well as .xlsx?
Yes, and .xlsm. The modern format is a zip of XML defined by ECMA-376; the older .xls is a binary format that predates it. Both are read here.
The columns are named A, B, C instead of my headers.
That happens when the first row is blank or merged. Merged cells report their value once and leave the rest empty, so a merged header produces one named column and several placeholders. Unmerging the header row in the source is the reliable fix.
Related tools
Worth reading
- SheetJS documentation – The library that reads the workbook here, including how cell types and dates are modelled
- RFC 8259 §6 — JSON numbers – Why implementations disagree about large integers, and what to do instead