Excel to HTML Converter

Read an .xlsx workbook in the browser and get semantic table markup you can paste straight into a page.

Excel file

Drop a file here, paste from the clipboard, or choose one

XLSX, processed in this tab

HTML
Runs locally in your browser

About the Excel to HTML Converter

Copying a range out of Excel and pasting it into a web page drags along a wall of inline styles, mso- attributes and empty spans. This converter skips that route entirely: it unzips the workbook, reads the sheet you pick, and emits a bare <table> whose first row becomes <th> cells inside <thead>.

Every cell is HTML escaped, so a product description containing < or an ampersand renders as text rather than breaking your layout. Shared strings and inline strings are both resolved, numbers keep the value stored in the file, and booleans come through as true or false. Formulas are exported as their cached result, because that is what the workbook keeps on disk.

Add a class in the toolbar when your CSS framework needs one, or tick the full page option to get a standalone document with a small stylesheet already attached, handy for a quick report you want to email. Legacy .xls files and password protected workbooks cannot be read; resave them as .xlsx first.

If you would rather look at the data than publish it, Excel Viewer renders the same sheet as a scrollable grid, and Excel to CSV gives you plain delimited text for a script.

How to use

  1. Drop an .xlsx file on the left pane or click to browse.
  2. Set the sheet index if the data is not on the first sheet.
  3. Add a table class or tick the full page option if you need one.
  4. Copy the markup or download it as table.html.

Common questions

Does the table keep my cell colours and fonts?
No. Only the values are converted, which keeps the markup small and lets your own stylesheet control the look.
How do I convert the second worksheet?
Change Sheet index to 1. Indexes start at 0, and the status line names the sheet that was read.
Are merged cells supported?
Merged ranges are flattened: the value lands in its top left cell and the other cells in the range come through empty.
Can I use this on confidential data?
Yes. The workbook is unzipped and parsed by JavaScript on your machine, and no part of it is sent anywhere.