Hiding a Hyperlink on a Printout

Kathy has a hyperlink in cell A1 of every worksheet in her workbook. The hyperlink, when clicked, displays a worksheet that contains a table of contents so she can move around the enormous workbook faster. Kathy doesn’t want to print the hyperlink when she prints the worksheets. She wonders if there is any way to format the hyperlink so it doesn’t print. She notes that hiding column A or row 1 defeats the purpose because she wants this cell visible while working in the workbook.

There are many ways you can go about this. Perhaps the easiest way is to just “hide” the information in cell A1 so it is not visible and won’t print out. One way to do this is to format the text in the cell as white, since white-on-white is quite invisible. The link would still be there and could easily be clicked, but it wouldn’t be visible.

A similar result can be had by applying a custom format to the cell. Just use the format “;;;” (that’s three semicolons, without the quote marks) and the information in the cell disappears from view. Again, you can still click the link, even though it is quite invisible.

Another way to approach the problem is to define print areas for each of your worksheets. Just exclude the first row of each worksheet from the print area, and it will never show up on the printout. The added benefit to this approach is that the hyperlink is still visible on each worksheet.

You could also put your hyperlink into a text box instead of cell A1. The text box could then be formatted so that it doesn’t print. (Select the text box, right-click and choose Size and Properties, display the Properties tab, and uncheck the Print Object check box.)

Another approach is to not use hyperlinks in your worksheets, but instead add a form button that, when clicked, runs a macro that takes the user to the main worksheet. (How you create form buttons has been discussed in other issues of ExcelTips.) Form buttons aren’t included when you print your worksheets.

A rather unique approach is to use Microsoft Word to help you create the link. You can, in Word, create a hyperlink and then format that hyperlink as Hidden text. (How you format Hidden text can be found on the WordTips website.) Then, copy the text of the link to the Clipboard and paste it into Excel as a Word object. The object can then retain the features of Word-including the text being hidden-and still be “clickable” in Excel.

Finally, you could use macros to facilitate printing your worksheets. Add the following macro to the ThisWorkbook object:

Private Sub Workbook_BeforePrint(Cancel As Boolean)
    Dim wks As Worksheet

    For Each wks In Worksheets
        wks.Range("A1").NumberFormat = ";;;"
    Next
End Sub

All this does is to apply, to all the worksheets in the workbook, the special custom format described earlier in this tip. The macro is automatically run just before printing. After printing the formatting is still in the worksheets. You can then include a second macro to apply the General format to cell A1 in the workbook being activated:

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    Sh.Range("A1").NumberFormat = "General"
End Sub