次の方法で共有

ハイパーリンクのリンク先をグラフシートにする

Anonymous
2017-07-05T20:25:01+00:00

目次を作成しています。

グラフシートにハイパーリンク設定を行いたいのですが、

ハイパーリンクのリンク先の選択肢に表示されません。

他にどのような対応方法があるでしょうか。

よろしくお願いします。

Microsoft 365 と Office | Excel | 家庭向け | Windows

ロックされた質問。 この質問は、Microsoft サポート コミュニティから移行されました。 役に立つかどうかに投票することはできますが、コメントの追加、質問への返信やフォローはできません。

0 件のコメント コメントはありません

質問作成者が受け入れた回答

ひまじん 17,185 評価のポイント
2017-07-24T01:03:43+00:00

>最終的にはPDFファイルにするのですが、

>マクロは実行できないという認識であっているでしょうか。

これは、最終的にハイパーリンクを張ったシートを含むブック全体を PDF に変換する、ということでしょうか?。

その場合、Excel で作成された VBA(マクロ)は PDF では機能しないと思います。

また、Excel に最初から組み込まれている変換機能を使って作成された PDF ファイルでは、通常のハイパーリンクも機能しないはずです。

PDF の編集などについては全くの門外漢なのですが、PDF 作成/編集ソフトのリンク編集機能などを使って、機能していないリンクを改めて設定するのが一番簡単な解決方法に思えます。

PDF を直接編集できれば、グラフシートにリンクが張れないといった Excel 上の制約は無くなり、VBA を使う必要も無くなりますので。

一応、「 Adobe Acrobat Pro DC 」 の試用版で試してみたところ、このソフトのインストールによって Excel 上で 「PDFMaker」 アドインが使えるようになり、ハイパーリンクが機能する PDF ファイルの出力が可能になりました。

ただし、作成された PDF ファイルを開いても、当然ながら VBA を使った間接ジャンプは機能しませんが、PDF の編集機能を使うことでリンクの再設定が比較的簡単に行えました。(Windows7 Ultimate、Excel2007 の環境で検証。)

他のソフトでも同様のリンク編集機能を持っているものもあろうかと思います。

こういった PDF 作成/編集ソフトの使用も検討されてみてはいかがでしょう。

既にご使用になっておられるのでしたら余計なことかとも思いましたが、念のため、ご参考まで。

この回答は役に立ちましたか?

1 人がこの回答が役に立ったと思いました。
0 件のコメント コメントはありません

質問作成者が受け入れた回答

ひまじん 17,185 評価のポイント
2017-07-09T03:17:45+00:00

こんにちは。

ハイパーリンクを使っての直接のジャンプは出来ないようですので、VBA(マクロ)でも良ければ、Workbook_SheetFollowHyperlink イベントを使ってみてはいかがでしょう。

以下、このイベントを使って間接的にジャンプ(グラフシートを表示)させる方法の一例です。

<例1>Sheet1(ワークシート名)の A1 セルに Graph1(グラフシート名)へのハイパーリンクを設定したい場合。

  1. Sheet1(ワークシート名)の A1 セルのハイパーリンクの参照先を、自身の A1 セルとしておく。
  2. 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(グラフシート名)へのハイパーリンクを追加設定したい場合。

  1. Sheet2(ワークシート名)の B2 セルのハイパーリンクの参照先を、自身の B2 セルとしておく。
  2. Alt + F11 キー押下で VBE(VBA の開発環境)を起動。
  3. 「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

よろしければ、お試しになってみてください。

この回答は役に立ちましたか?

1 人がこの回答が役に立ったと思いました。
0 件のコメント コメントはありません

4 件の追加の回答

並べ替え方法: 最も役に立つ
  1. Anonymous
    2017-07-23T07:56:56+00:00

    ひまじん 様

    ご回答いただきまして、ありがとうございました。

    Excelでの実行方法が理解できました。

    また、実際に試させて頂きまして、動作確認できました。

    ちなみに、

    最終的にはPDFファイルにするのですが、

    マクロは実行できないという認識であっているでしょうか。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  2. Anonymous
    2017-07-06T18:13:49+00:00

    秋山さん

    ご回答ありがとうございます。

    やはり設定方法は無いということでしょうか。

    もう暫く他の方のご回答を待ちたいと思います。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません
  3. Anonymous
    2017-07-06T08:39:00+00:00

    ​hanakoyamadaXE さん、こんにちは。

    マイクロソフト コミュニティへの投稿、ありがとうございます。

    Excel 2013 で、グラフ シートへのハイパーリンクを作成したいのですね。

    こちらについてサポートページなどを調べてみたのですが、参考になりそうな情報は見つからなかったです。

    手元の環境 (Windows 8.1 + Excel 2013) でも確認してみたのですが、設定できそうなところはなかったので、グラフ シートへハイパーリンクを設定することはできなさそうです。。

    他になにか情報をお持ちの方がいらっしゃいましたら投稿お待ちしています。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません