How to convert an Excel spreadsheet to PDF that actually fits
Set a print area, then use Page Layout → Scale to Fit with Width set to 1 page and Height left on Automatic. Add repeating header rows through Print Titles, switch to landscape for wide tables, and export with File → Export → Create PDF/XPS. Never set both Width and Height to 1 page.
Excel exports to PDF badly by default because a spreadsheet has no page size. It is an infinite grid, and Excel has to guess where to cut it. Six settings turn that guess into a decision you control, and they all live on the Page Layout tab.
The six settings that matter
- Set the print areaSelect the cells you actually want, then Page Layout → Print Area → Set Print Area. Without this, Excel exports every cell that has ever been touched, including the stray space in BZ4000 that produces 38 blank pages.
- Fit to width, not to pageIn Page Layout → Scale to Fit, set Width: 1 page and leave Height: Automatic. This is the single most important setting. It stops columns spilling onto their own sheets while letting the rows flow naturally over as many pages as they need.
- Go landscape for wide tablesPage Layout → Orientation → Landscape. A4 landscape is 297 mm wide against 210 portrait, 41 percent more width for nothing.
- Repeat the header rowPage Layout → Print Titles → Sheet tab → Rows to repeat at top, then click the row selector for row 1 (it fills in as
$1:$1). Now every page carries the column headings instead of just the first. - Check Page Break PreviewView → Page Break Preview shows blue lines where the pages will split. Drag them to move a break. Solid blue is a manual break you set; dashed blue is Excel automatic choice.
- ExportFile → Export → Create PDF/XPS, then click Options to choose Active sheet(s), Entire workbook or Selection, and to set a page range.
Do not set both Width and Height to 1 page unless the data really is small. Excel will shrink the whole sheet until it fits, and a 200-row table forced onto one page ends up at about 4 point type, technically one page, unreadable in practice. Width 1 / Height Automatic is almost always what you meant.
Every relevant setting, and where it lives
| Problem | Setting | Where |
|---|---|---|
| Dozens of near-blank pages | Print Area | Page Layout → Print Area → Set Print Area |
| Columns spill to extra sheets | Width: 1 page | Page Layout → Scale to Fit |
| Table is too wide | Landscape | Page Layout → Orientation |
| Headers only on page 1 | Rows to repeat at top | Page Layout → Print Titles → Sheet |
| Page splits mid-section | Manual page break | Page Layout → Breaks → Insert Page Break |
| Content hugs the left edge | Center on page: Horizontally | Page Setup dialog → Margins |
| No grid on the printout | Gridlines → Print | Page Layout → Sheet Options |
| Want row and column labels | Headings → Print | Page Layout → Sheet Options |
| Pages come out in a strange order | Page order: Down, then over | Page Setup dialog → Sheet |
| Only one sheet exported | Publish what: Entire workbook | Export → Options |
The little arrow at the bottom-right corner of the Page Setup group on the Page Layout tab opens the full Page Setup dialog. Centring, page order, first page number and print quality live there and nowhere else on the ribbon.
Things that catch people out
- Hidden rows and columns do not print. That is usually what you want, but check that you did not hide something you needed. Filtered-out rows are hidden rows.
- Grouped and collapsed outlines print collapsed. Expand before exporting if the detail matters.
- Comments and notes are invisible by default. Page Setup → Sheet → Comments and Notes → "As displayed on sheet" or "At end of sheet".
- Error values print as they appear. Set Page Setup → Sheet → Cell errors as:
<blank>to hide a column of #N/A from a client. - Charts export at screen resolution unless they are on their own chart sheet. A chart embedded in a sheet can look soft in the PDF; move it to a dedicated chart sheet for a crisp result.
- Conditional formatting colours print. Check the cost in ink, or set Page Setup → Sheet → Black and white.
Google Sheets and LibreOffice Calc
In Google Sheets, File → Download → PDF Document opens a print preview with the same controls under different names: Scale offers "Fit to width", Headers & footers has "Repeat frozen rows", and the Export dropdown chooses Current sheet, Workbook or Selected cells. Freeze row 1 with View → Freeze → 1 row first, so the repeat option becomes available.
In LibreOffice Calc, Format → Print Ranges → Define sets the print area, and Format → Page Style → Sheet has "Fit print range to width/height" plus "Rows to repeat".
Convert an .xlsx to PDF in your browser, with fit-to-width handled for you.
Excel to PDF →After the export
Always open the PDF and read it before sending. Two checks catch nearly everything: does page 2 have headers, and does any column end in ##### (the column was too narrow and Excel could not display the number). Widen the column and export again.
If you exported each sheet separately, merge them into one document. If a monthly report needs page numbers, add them to the PDF rather than fighting Excel footers, which do not know how many pages the whole compiled document has. If the workbook is full of charts and screenshots, compress the result before emailing it.
Frequently asked questions
How do I make an Excel spreadsheet fit on one page in PDF?
Page Layout → Scale to Fit, set Width to 1 page and leave Height on Automatic. Setting both to 1 page shrinks the text until everything fits, which for anything over about 40 rows produces type too small to read.
Why does my Excel PDF have so many blank pages?
Excel exports everything up to the last cell ever used, including cells you cleared but did not delete. Select your data, then Page Layout → Print Area → Set Print Area. To fix it permanently, delete the unused rows and columns entirely and save.
How do I repeat the header row on every page of the PDF?
Page Layout → Print Titles, open the Sheet tab, click in "Rows to repeat at top" and select row 1 so it reads $1:$1. Excel then prints those rows at the top of every page. Freezing panes does not do this.
Can I export the whole workbook to one PDF?
Yes. File → Export → Create PDF/XPS, click Options, and choose "Entire workbook". Each sheet keeps its own page setup, so set the print area and scaling on every sheet before you export, not just the active one.
Why are my numbers showing as hashes in the PDF?
The column is too narrow for the formatted number, so Excel displays ##### instead. It prints exactly as displayed. Widen the column, or reduce the decimal places, then export again.