こんにちは。
ハイパーリンクを使っての直接のジャンプは出来ないようですので、VBA(マクロ)でも良ければ、Workbook_SheetFollowHyperlink イベントを使ってみてはいかがでしょう。
以下、このイベントを使って間接的にジャンプ(グラフシートを表示)させる方法の一例です。
<例1>Sheet1(ワークシート名)の A1 セルに Graph1(グラフシート名)へのハイパーリンクを設定したい場合。
- Sheet1(ワークシート名)の A1 セルのハイパーリンクの参照先を、自身の A1 セルとしておく。
- Alt + F11 キー押下で VBE(VBA の開発環境)を起動。
・参考 http://home.att.ne.jp/zeta/gen/excel/c04p43.htm
3. 左側に表示されるプロジェクトエクスプローラで 「ThisWorkbook」 をダブルクリック。
4. 表示された 「ThisWorkbook(コード)」 ウィンドウに、以下のコード(6行)をコピーし貼り付け。
Private Sub Workbook_SheetFollowHyperlink(ByVal Sh As Object, ByVal Target As Hyperlink)
Select Case Target.SubAddress
Case "Sheet1!A1"
Charts("Graph1").Select
End Select
End Sub
5. Alt + Q キー押下で VBE を閉じる。
<例2>Sheet2(ワークシート名)の B2 セルに Graph2(グラフシート名)へのハイパーリンクを追加設定したい場合。
- Sheet2(ワークシート名)の B2 セルのハイパーリンクの参照先を、自身の B2 セルとしておく。
- Alt + F11 キー押下で VBE(VBA の開発環境)を起動。
- 「ThisWorkbook(コード)」 ウィンドウが開いているはずなので、以下のコード(8行)をコピーし貼り付け(上書き)、もしくは以下のように修正。
Private Sub Workbook_SheetFollowHyperlink(ByVal Sh As Object, ByVal Target As Hyperlink)
Select Case Target.SubAddress
Case "Sheet1!A1"
Charts("Graph1").Select
Case "Sheet2!B2"
Charts("Graph2").Select
End Select
End Sub
4. Alt + Q キー押下で VBE を閉じる。
※動作概要
ハイパーリンクをクリックすると、そのクリックしたセル自身を選択した状態でハイパーリンクとしての動作は終了しますが、その直後、Workbook_SheetFollowHyperlink イベントが起動して上記のコードが実行され、そのコードの働きで、どのハイパーリンクがクリックされたのか判別し、指定されたグラフシートを表示します。
- 実際には、ワークシート名(Sheet1 等)、セルアドレス(A1 等)、グラフシート名(Graph1 等)、を実態に合わせて読み替え/変更してください。
- グラフシートへのハイパーリンクを増やすたび、<例2>のようにコードを2行ずつ追加していく必要があります。
- 『Charts("グラフシート名").Select 』 の部分は、『Sheets("グラフシート名").Select 』 としても同様の結果が得られます。
尚、このファイルを保存する際には 「マクロ有効ブック」(.xlsm)として保存してください。
また、ファイルを開いた際にメッセージバーに 「セキュリティの警告」 が表示される場合、「コンテンツの有効化」 をクリックしてマクロを有効にしてください。
Excel2013 は持ち合わせていないため、以下の組み合わせで動作確認しています。
・Windows7 Ultimate、Excel2007
・Windows10 Pro、Excel2016
よろしければ、お試しになってみてください。