Excelシート内のセルにリンクを張る方法は
- 「ハイパーリンクの挿入」ダイアログを使う
- 「HYPERLINK」関数を使う
のいずれかとなります。
「Excel ハイパーリンク」記事でもこのことはご紹介済みです。
1つのセルにリンクを張るなら、前者の「ハイパーリンクの挿入」ダイアログが簡単に扱えて便利です。
後者の「HYPERLINK」関数による方法も 1つのセルにリンクを張るときに使ってよろしいですが、その利点はたくさんのセルに対して HYPERLINK関数をコピー(オートフィル)して使うときだと思います。
より具体的には、HYPERLINK関数の引数にセル参照を使って適宜リンク先を替えるという使い方です。
今、「事務所日報 R05-03.xlsx」という Excelブックを例に各シートへのリンクを張った“目次”シートを作ってみます。
このブックには「1日」「2日」「3日」‥‥「30日」「31日」というシートからなり、「目次」シートを追加しました。
「目次」シートには、下図のようにそれぞれの日付と曜日の一覧を作っておきました。
A3セルには「2023/3/1」と入力し、ユーザー定義書式で「m"月"」と設定しました。
B3セルは「=A3」とし、ユーザー定義書式で「d"日"(aaa)」と設定、B4セルは「=B3+1」と入力、以降 B33セルまでコピーします。
ここは、他のブックで試すなら、シート名一覧あるいはそれに準じたリストが並ぶようにすればよろしいです。
この例では、同じブック内の別シートへのリンクを張ればよいので、「Excel ブック内の別シートにリンク」記事でご紹介したようにすればできます。
C3セルに「=HYPERLINK("#"&DAY(B3)&"日!A1","▶")」と入力し、以降 C33セルまでコピーします。(下図)
HYPERLINK関数でリンクを張った直後は「▶」に下線が施されていますが、[Ctrl]+[U]キーを押して下線を解除します。
いずれかの「▶」をクリックすると、対応するシートに飛び、その A1セルがアクティブセルとなります。
上記 HYPERLINK関数の引数でポイントとなるのは、
- ブック内のシートを参照するので「#」でブック名の指定ができる
- シート名を参照する部分「DAY(B3)&"日"」は他の参照形式を使ってもよい
- リンク先の参照セル番地は目的により変更してよい
‥‥といったところでしょうか。
この例では、シート名をセル参照して使いましたが、URLや PC内のフォルダ名などに置き換えても同様に HYPERLINK関数でまとめてリンクを張ることができます。
もちろん、「mailto:」を使ってメール送信に使うときもセル参照で引数を完成させると、たくさんの送信先に対して同様に効率化できますね。
なお、今回の例のように日付と各シートへのリンクでしたら、下図のようなカレンダー表示としてもよいでしょう。