bottom
Great ExcelTips!
         
Your e-mail address is safe!
Close Note

Tips.Net > ExcelTips Home > Macros > VBA Examples > Hyperlinks to Charts

Hyperlinks to Charts

Summary: You can create hyperlinks to all sorts of worksheets in a workbook, but you cannot create a hyperlink to a chart sheet. This tip provides a workaround that should display just what you want hyperlinked in the first place. (This tip works with Microsoft Excel 97, Excel 2000, Excel 2002, Excel 2003, and Excel 2007.)

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.

Tip #2539 applies to Microsoft Excel versions: 97 | 2000 | 2002 | 2003 | 2007


Save Time! ExcelTips has been published weekly since late 1998. Past issues of ExcelTips are available in convenient ExcelTips archives. Have your own enhanced archive of ExcelTips at your fingertips, available to use at any time!
 
Check out ExcelTips Archives today!

Helpful Links

Ask an Excel Question
Make a Comment

Tips.Net Home

ExcelTips FAQ
ExcelTips Premium

Learn Access Now

Beauty Tips
Car Tips
Cleaning Tips
College Tips
Cooking Tips
Excel2007 Tips
ExcelTips
Family Tips
Gardening Tips
Health Tips
Home Tips
Money Tips
Organizing Tips
Pest Tips
Pet Tips
Word2007 Tips
WordTips

Advertise on the
ExcelTips Site

 

Great Info!

Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your e-mail address and click "Subscribe."
     
(Your e-mail address will never be shared with anyone, ever.)