Go to Page Layout → Sheet Options and, under Gridlines, tick Print. Press Ctrl + P to check the preview: the grey grid should now appear on the page.
The setting belongs to the active worksheet, not the whole workbook. To switch it on for several sheets at once, Ctrl-click their tabs to group them, tick Print, then click a single tab to ungroup. The View tick box beside it only controls the screen, so you can hide gridlines while you work and still print them.
The same option sits in Page Layout → Page Setup (the small arrow at the corner of the group) → Sheet tab → Gridlines. If the preview still shows no lines, check that Draft quality on that tab is cleared, because draft printing leaves gridlines out.
Gridlines print only as far as the last cell holding data. To print a grid over empty cells as well, select the full range and set it as the print area with Page Layout → Print Area → Set Print Area, or apply borders with Alt, H, B, A (All Borders), which print whatever the gridline setting is.
For darker or coloured lines, change File → Options → Advanced → Display options for this worksheet → Gridline color. This is also set per sheet; if the printed grid is still too faint, borders give you full control over line weight and colour.
Each cell in an Excel worksheet has a light grey border called gridlines. But when you print data, Excel doesn’t print them on the paper by default.
You can activate an option to print the gridlines while printing the data from a worksheet. So, let’s get started.
Activate the Print Gridlines Option in Excel
- First, go to the “Page Layout” tab.
- Then, go to the “Sheet Options” group.
- From there, under the Gridlines option, there are two checkboxes: View and Print.
- Now, tick the “Print” checkbox.

When you tick the Print checkbox, it tells Excel to print gridlines along with the data. But you need to take care of one thing: it only prints gridlines for the cells in the used range (or the print area, if you have set one).

In the above example, you can see that it shows gridlines up to the last cell with the value.
Another Way to Activate the Print Gridlines Option
You can also activate the option from the page setup dialog box. Go to the Page Layout tab and click the tiny arrow at the bottom-right corner of the Page Setup group to open the Page Setup dialog box.

In the Page Setup dialog box, go to the Sheet tab and tick the “Gridlines” checkbox under Print. In the end, click OK to save the setting.

Note – When you use any of the above ways to activate the print gridlines option, it only applies to the current worksheet, not to the other sheets or workbooks. To turn it on for several sheets at once, select them first (hold Ctrl and click the sheet tabs) and then tick the checkbox.
Changing the Color of the Gridlines
If you want to take a color printout instead of black and white, you can also change the color of the gridlines. Go to the File Tab and open the Excel Options.

From there, go to Advanced and under “Display options for this worksheet”, click on the Gridline color drop-down and select the color you want to apply.
Using Borders Instead of Gridlines
If you want to print gridlines for the entire page instead of the used range, you can apply a border to the data and then print the data.
Select the data you want to print with the gridlines and then apply borders with the keyboard shortcut Alt > H > B > A (press the keys one after another).
Check the Gridlines in Print Preview
Before you print, press Ctrl + P to open the print preview and check that the gridlines show on the page. If they don’t, check these things:
- Wrong sheet: the Print checkbox is set for each sheet separately, so make sure you ticked it on the sheet you’re printing.
- Fill color: cells with a white fill color can hide the gridlines on the screen; apply borders if you want lines on those cells.
- Light printing: gridlines are thin and light, so change the gridline color or use borders if they’re hard to see on paper.
Print Gridlines Using VBA
If you want to turn on the option for every sheet in the workbook at once, you can use the PrintGridlines property in a short macro:
Sub print_gridlines_all_sheets()
Dim ws As Worksheet
For Each ws In ActiveWorkbook.Worksheets
ws.PageSetup.PrintGridlines = True
Next ws
End Sub
Frequently Asked Questions
Why are my gridlines not printing?
The Print checkbox under Gridlines is off for that sheet. Go to Page Layout ➜ Sheet Options and tick Print under Gridlines, then check the print preview.
What is the difference between gridlines and borders?
Gridlines are the light lines Excel shows around every cell, and they print only when you turn on the Print option. Borders are lines you add to specific cells, and they always print.
Can I print gridlines on empty cells?
Yes. Set a print area that includes the empty cells (Page Layout ➜ Print Area ➜ Set Print Area), and the gridlines print for the whole area. You can also apply borders to those cells.
Written by
Puneet Gogia
Microsoft MVP — Excel · Founder, Excel Champs
Twelve years of teaching Excel, and a decade before that using it as a data analyst. Every tutorial here is written from a file I actually built.