Excelで特定のセルに移動(ジャンプ)するリンクや目次を作る方法
Excelで特定のセルに移動するリンクを作りたい!
Excelを使って手順書などの資料を作っている際、特定のセルに移動(ジャンプ)するリンクを作りたいと思うことがあります。
たとえば手順書中で、以下のような記載があったとしましょう。
手順3:XXXの設定値が○○○であった場合には手順4へ、△△△であった場合には手順6へ進んでください。
こういったケースでは、手順中の『手順6』という文字列の部分をクリックすることで、手順6の記載箇所のセルまで移動できるリンクになっていると便利ですよね。
そこで今回は、Excelで特定のセルに移動(ジャンプ)するリンクを作成する方法をご紹介します!
またこのリンクを作る機能を使うことで、簡易的な目次のようなものを手動で作成することも可能です。
Excelの資料に対して目次を作成する場合、VBAを使って自動で目次を作成する方法が複数ネット上で見つかります。
ですがリンクを作る機能であれば、VBAの機能を使わずに簡易的な目次のようなものを手動で作成できるため、VBAを使わずに目次を作りたい方も、ぜひ参考になさってください!
Excelで特定のセルに移動するリンクを作る方法
先にも書いたとおり、特定のセルに移動(ジャンプ)するリンクの作成機能を使うことで、簡易的な目次のようなものをVBAの機能を使わずに作成できます。
そのため、Excelで特定のセルに移動するリンクを作る方法について、以下のようなExcelシートの目次を作る方法を例にご紹介しましょう!
まずはシートの上部に、以下のような目次セクションを追加します。
今回の例では、C3セルの『セクション1』という文字列をクリックしたら、B6セルに移動。
C4セルの『セクション2』という文字列をクリックした場合には、B12セルに移動するような動作の目次を作る、というわけです。
まずは、C3セルに対してB6セルに移動するリンクを設定しましょう。
特定のセルに入力されている文字列に対してリンクを設定する場合は、対象のセルで右クリックを行いコンテキストメニューを表示。
そして表示されたメニューの中から『リンク』メニューをクリックしてください。
すると『ハイパーリンクの挿入』画面が表示されるので、画面左側にある『このドキュメント内』というボタンをクリックします。
次に『セル参照を入力してください』という箇所のテキストボックスに、移動先のセルを指定します。
今回の例では、B6セルに移動するような動作とするため、以下のように『B6』と入力してから『OK』ボタンをクリックしましょう。
以上の操作により、C3セルに入力されている『セクション1』という文字列に対し、B6セルに移動する機能を持ったリンクが設定されます。
C3セルに入力されている『セクション1』という文字列をクリックすると、以下のようにB6セルへの移動が実行されます。
C4セルの『セクション2』という文字列についても同様の操作を行ってください。
セクション2の移動先はB12であるため、『ハイパーリンクの挿入』画面にて『セル参照を入力してください』という箇所のテキストボックスに『B12』と設定。
このような手順により、簡易的な目次のようなものをVBAの機能を使わずに作成可能です。
移動先に異なるシートを設定する方法
ここまでにご紹介した方法では、リンクを設定しているセルと移動先のセルが同じシート上にありました。
ですがもちろん、リンクを設定しているセルがあるシートと異なるシートのセルを移動先として指定することも可能です。
この場合には、『ハイパーリンクの挿入』画面中の『またはドキュメント内の場所を選択してください』という部分で、対象のシートを選択します。
たとえば移動先としてSheet2のB6セルに設定したい場合には、以下のように設定を行います。
移動先にセル範囲や定義した名前を設定する方法
移動先として単一のセルではなく、セル範囲を指定することも可能です。
先ほど例示した方法では、C3セルの『セクション1』という文字列をクリックすることでB6セルに移動するようなリンクを設定していました。
このリンク先として、『セクション1』全体のセル範囲であるB6:C10を設定することも可能というわけです。
Excelでリンクの移動先としてセル範囲を指定するときは、移動先のセル範囲に名前をつけ、それを移動先として設定すると分かりやすいでしょう。
たとえばB6:C10セル範囲に対し、以下のように『section1』という名前をつけたとします。
このケースでは、『ハイパーリンクの挿入』画面中の『またはドキュメント内の場所を選択してください』という部分で、『section1』という名前を指定すればOK!
C3セルの『セクション1』という文字列に対して設定されているB6セルへの移動を、『section1』(B6:C10セル範囲)に変更する場合は、C3セルを右クリックしてコンテキストメニューを表示し、『ハイパーリンクの編集』メニューをクリックします。
すると『ハイパーリンクの挿入』画面が表示されるので、『またはドキュメント内の場所を選択してください』という部分で、『section1』という名前を指定してから『OK』ボタンをクリックしてください。
この設定変更により、C3セルのリンク文字列をクリックすると、以下のように『section1』(B6:C10セル範囲)に移動する(選択状態とする)動作となります。
尚、移動先のセル範囲に名前をつけず、『ハイパーリンクの挿入』画面にて『セル参照を入力してください』という箇所のテキストボックスに『B6:C10』と設定する方法でも、セル範囲に移動可能なリンクを設定可能です。
ただし名前をつけて設定する方法のほうが、リンク先を設定する際に分かりやすくなる、というメリットがあります。
名前をつけたリンク設定の場合は、行や列の追加削除を行うとリンク先のセルが自動的に変わります!
セルやセル範囲に名前をつけず、『セル参照を入力してください』という箇所のテキストボックスにセルへの参照(『B6』や『B6:C10』)を設定する方法では、行や列の削除を行った際も、リンク先のセルが変更されません。
したがって、たとえばC3セルの『セクション1』という文字列をクリックしたらB6セルに移動するようなリンクを設定。
その後5行目を削除する操作を行った場合、削除後もリンク先はB6セルのままです。
ところがB6セルに名前をつけてリンク先を指定している場合には、削除操作をすると名前の参照先セルがB6セルからB5セルに自動的に変わります。
そのため、リンク先のセルも自動的に変更されます。
こういった事情から、シート中の記載内容が増えたり減ったりすることで、今後リンク先のセルが移動することが想定される。
というケースでは、リンク先の設定には名前を指定する方法がおすすめです。
設定したリンクを削除(解除)する方法
特定のセルやセル範囲に移動するよう設定したリンクを削除(解除)したい場合には、まずは(リンクの削除)対象のセルやセル範囲を選択してください。
たとえば、別のセルに移動するよう設定されているC3セルとC4セルのリンクを削除するケースでは、C3:C4セル範囲を選択します。
そして対象のセル、またはセル範囲で右クリックを行い、コンテキストメニューを表示。
次に『ハイパーリンクの削除』メニューをクリックしてください。
この操作により、C3:C4セル範囲に設定されていたリンクが削除され、以下のような状態となります。
数式を使って特定のセルに移動するリンクを作る方法
コンテキストメニューの『リンク』(『ハイパーリンクの挿入』)機能を使うのではなく、数式を使って特定のセルに移動するリンクを作ることも可能です。
数式を使ってリンクを作成する場合には、『HYPERLINK』関数を使用します。
たとえばあるセルに、同一シートのB6セルに移動するリンクを『セクション1』という文字列で作成するときは、以下のような数式を入力してください。
1 | =HYPERLINK("#B6","セクション1") |
また、『Sheet2』という名前のシートのB6セルに移動するリンクを『セクション1』という文字列で作成するときは、以下のような数式を入力。
1 | =HYPERLINK("#Sheet2!B6","セクション1") |
そして、同一シートの『section1』という名前のセル範囲に移動するリンクを『セクション1』という文字列で作成するときは、以下のような数式を入力します。
1 | =HYPERLINK("#section1","セクション1") |
以上、参考になさってくださーい!