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.
With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He is president of Sharon Parq Associates, a computer and publishing services company.
Learn more about Allen...
Please Note: This article is written for users of the following Microsoft Excel versions: 97, 2000, 2002, and 2003. If you are using a later version (Excel 2007 or later), this tip may not work for you. For a version of this tip written specifically for later versions of Excel, click here: Find and Replace in Headers.
One of the very useful tools provided in Excel is Find and Replace, which allows you to locate and change information stored in cells. One place that Find and Replace won't work, however, is with information stored in headers or footers for your worksheets.
The only way to handle the finding and replacing of information in a header or footer is to use a macro. It is a rather trivial task to access what is stored in the various parts of the header and footer, check them for what you want to find, and then replace it with some new text. The following macro provides an example.
Sub FnR_HF() Dim sWhat As String, sReplacment As String Const csTITLE As String = "Find and Replace" sWhat = InputBox("Replace what", csTITLE) If Len(sWhat) = 0 Then Exit Sub sReplacment = InputBox("With what", csTITLE) With ActiveSheet.PageSetup ' Substitute Header/Footer values .LeftHeader = Application.WorksheetFunction.Substitute( _ .LeftHeader, sWhat, sReplacment) .CenterHeader = Application.WorksheetFunction.Substitute( _ .CenterHeader, sWhat, sReplacment) .RightHeader = Application.WorksheetFunction.Substitute( _ .RightHeader, sWhat, sReplacment) .LeftFooter = Application.WorksheetFunction.Substitute( _ .LeftFooter, sWhat, sReplacment) .CenterFooter = Application.WorksheetFunction.Substitute( _ .CenterFooter, sWhat, sReplacment) .RightFooter = Application.WorksheetFunction.Substitute( _ .RightFooter, sWhat, sReplacment) End With End Sub
Note how the macro does the replacements in all three parts of the header and all three parts o the footer.
If you prefer to not use your own macro, or if you want a more full-featured Find and Replace for Excel, you might consider the free FlexFind add-in from Excel MVP Jan Karel Pieterse:
This add in searches regularly, but also searched in lots of other areas including headers and footers.
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (3928) applies to Microsoft Excel 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Excel (Excel 2007 and later) here: Find and Replace in Headers.
Professional Development Guidance! Four world-class developers offer start-to-finish guidance for building powerful, robust, and secure applications with Excel. The authors show how to consistently make the right design decisions and make the most of Excel's powerful features. Check out Professional Excel Development today!