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: Hyperlinks to Charts.
Excel allows you to create hyperlinks, either to resources on the Internet or to cells in other worksheets. Excel won't, unfortunately, allow you to create hyperlinks that display chart sheets in your workbook. If a worksheet includes a chart object (the chart was created as an object in a worksheet), then you can create a hyperlink that displays the worksheet on which the chart object is located. You cannot, however, use an actual chart sheet as the target of your hyperlink.
The way to work around this problem is to create a macro that actually displays the desired chart sheet. You can then assign the macro to a button, a menu item, a toolbar button, or any similar object. You would use a macro such as the following:
Sub GotoChart1() Sheets("Chart1").Select End Sub
This is a very simplistic version of a macro that displays a specific chart sheet. In this case, the chart sheet is named Chart1; you can change the name to reflect your needs. You can create a macro like this for each destination chart sheet in your workbook.
An alternative is to enhance the macro so that it accepts a parameter indicating the name of the chart sheet you want selected. For instance, consider the following macro:
Sub GotoChart2() Sheets(ActiveSheet.Shapes(Application.Caller) _ .TopLeftCell.Value).Select End Sub
With this macro in place, go back to your worksheet and select the cell where you want your hyperlink. Type the name of the chart sheet, and format it to look like a hyperlink. (Blue, underlined text, or formatted as desired. You are simulating a hyperlink; you are not creating a real one.)
Using the Forms toolbar, create a label object within the same cell, and format the label to not be visible. You do this by modifying the properties of the object so it has no lines, no text, etc. Then, right-click the label object and use the Assign Macro choice to assign the GotoChart2 macro to the object.
Now, when someone tries to click the "hyperlink," they are really clicking the invisible label object, and the macro is being executed. The macro determines the name of the object that called it (Application.caller), figures out what cell the object's top-left corner is in, and grabs the value of that cell. The value is then used as the destination name for the desired chart sheet.
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (2539) 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: Hyperlinks to Charts.
Save Time and Supercharge Excel! Automate virtually any routine task and save yourself hours, days, maybe even weeks. Then, learn how to make Excel do things you thought were simply impossible! Mastering advanced Excel macros has never been easier. Check out Excel 2010 VBA and Macros today!