Written by Allen Wyatt (last updated January 4, 2020)
This tip applies to Excel 97, 2000, 2002, and 2003
One of the long-time complaints about Excel is that it doesn't have a very robust method of creating and managing headers and footers. Consider the following scenario: You want to print your worksheet, but only have page numbers beginning on the second page.
There is no intrinsic method in Excel to handle this situation. There are some workarounds; for instance, you could put your first page on one worksheet (without headers or footers) and the subsequent pages on a different worksheet (which includes headers and footers). You could then print the two worksheets in one pass, and effectively achieve your goal.
If you have the Report Manager installed, you could use it to put together different reports based on the information in your worksheet. Using the Report Manager has been covered in other issues of ExcelTips. The Report Manager add-in was last distributed with Excel 2002, but you can still use it in Excel 2003.
Neither of these approaches work for all situations, however. For instance, you may not be able to split your printout into multiple worksheets, or you may not have much experience with the Report Manager (or you don't want to download and install it). If you prefer, you can create a macro which will print your worksheet as you desire.
The following macro, GoodPrint, will print the first page of a worksheet without headers or footers, and then all subsequent pages as normal.
Sub GoodPrint()
Dim hlft As String
Dim hctr As String
Dim hrgt As String
Dim flft As String
Dim fctr As String
Dim frgt As String
'save current header
hlft = ActiveSheet.PageSetup.LeftHeader
hctr = ActiveSheet.PageSetup.CenterHeader
hrgt = ActiveSheet.PageSetup.RightHeader
'save current footer
flft = ActiveSheet.PageSetup.LeftFooter
fctr = ActiveSheet.PageSetup.CenterFooter
frgt = ActiveSheet.PageSetup.RightFooter
'remove header and footer
With ActiveSheet.PageSetup
.CenterHeader = ""
.RightHeader = ""
.LeftHeader = ""
.CenterFooter = ""
.RightFooter = ""
.LeftFooter = ""
End With
'print page one
ActiveSheet.PrintOut 1, 1
'restore header and footer
With ActiveSheet.PageSetup
.LeftHeader = hlft
.CenterHeader = hctr
.RightHeader = hrgt
.LeftFooter = flft
.CenterFooter = fctr
.RightFooter = frgt
End With
'print the rest of the pages
ActiveSheet.PrintOut 2
End Sub
Note:
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (2189) applies to Microsoft Excel 97, 2000, 2002, and 2003.
Program Successfully in Excel! This guide will provide you with all the information you need to automate any task in Excel and save time and effort. Learn how to extend Excel's functionality with VBA to create solutions not possible with the standard features. Includes latest information for Excel 2024 and Microsoft 365. Check out Mastering Excel VBA Programming today!
When creating headers and footers in an Excel worksheet, you can use special codes to add or format information. This tip ...
Discover MoreExcel allows you to add footers to the worksheets you create. If you decide you don't need a footer any more, here's how ...
Discover MoreNormally Excel displays row and column headers in a worksheet. If you prefer, you can turn these navigational aids off ...
Discover MoreFREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
There are currently no comments for this tip. (Be the first to leave your comment—just use the simple form above!)
Got a version of Excel that uses the menu interface (Excel 97, Excel 2000, Excel 2002, or Excel 2003)? This site is for you! If you use a later version of Excel, visit our ExcelTips site focusing on the ribbon interface.
FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2025 Sharon Parq Associates, Inc.
Comments