Excel's “Save as Web Page” breaks when you send it
You saved the workbook as a web page so people without Excel could read
it, attached the .htm, and the reply came back: "it's blank" — or
"there's only one sheet", or "it looks like a 1998 website".
The file isn't corrupt. Excel never made one file.
What Excel actually writes
Save a workbook as Web Page (*.htm; *.html) and you usually get two things next to each other:
Q3 forecast.htm
Q3 forecast_files/
sheet001.htm
sheet002.htm
tabstrip.htm
stylesheet.css
filelist.xml
image001.png
Q3 forecast.htm is a thin wrapper. For a multi-sheet workbook it is a
frameset that loads each sheet and the tab strip from the _files
folder; even a single sheet usually pulls its stylesheet, images and
charts from there. Exactly what lands in the folder depends on the Excel
version and what the workbook contains, but the shape is always the same:
the page you see is assembled from files the .htm only points at.
Why it breaks in transit
Every reference into _files/ is relative. On your machine the folder
sits next to the .htm, so it works. Once the .htm travels alone:
- Blank page or empty frame — the frameset loads, the sheet files don't exist on the recipient's machine.
- Only one sheet, no tabs — the tab strip lives in the folder too.
- No colours, borders or fonts —
stylesheet.cssis missing. - Broken image icons where the charts were — chart images are PNGs in the folder.
Renaming the .htm breaks it the same way on your own machine, because
the folder name is baked into every path.
Fix 1: send the folder too (fragile)
Zip the .htm and the _files folder together, unchanged. It works if
the recipient extracts the zip and opens the .htm from the extracted
folder. It fails if they preview the file from inside the archive, open
it on a phone, or the mail gateway strips the zip. This is the same
trap as images not showing in a sent HTML file.
Fix 2: Single File Web Page (.mht) (unreliable)
Excel's Single File Web Page (*.mht; *.mhtml) packs everything into one file. That solves the folder problem and replaces it with a support problem: MHTML is opened by some desktop browsers and simply downloaded by others, mail clients rarely preview it, and phones mostly don't render it at all. Fine for archiving; poor for sending.
Fix 3: convert the sheet to a plain HTML table
A plain <table> has nothing external to lose. The
Excel to HTML table converter reads the
.xlsx in your browser — nothing uploads — and produces a clean,
styled table:
- values exactly as Excel displays them (currency, percentages, dates), formulas as their last calculated result;
- one sheet, or every sheet on one page with a heading each;
- a downloadable
.htmlwith the styles inline, or Markdown for a ticket.
What you give up: cell colours, conditional formatting and charts. If those are the point, export the sheet to PDF from Excel, or rebuild the chart in the HTML report itself.
Better than a file: a link
Even a perfect single .html is still an attachment — Outlook may
block it, and Slack
won't preview it. From the
converter, Get a shareable link publishes the table to Comma
instead: one URL that opens in any browser, on a phone too, with no
Excel installed. Readers comment on the exact row
rather than replying "row 14 looks off", and publishing again next week
keeps last week's version as a revision.
Try it
Convert an Excel sheet to HTML →
Related
- Excel to HTML table — workbook in, clean table out
- CSV to HTML table — for exports and pasted ranges
- HTML inliner — fold a page's CSS and images into one file
- The HTML file is too big to email
- The HTML file shows code instead of the page