Excelで目次(シートへのリンク)を作るマクロ

Excelでシートが多くなると選択に手間がかかります。
とはいえ、1つのファイルにしておきたいこともあるはずです。
そこで、シートへの目次を作ってみましょう。
Excel見出し

 

シートの基本的な操作方法

シートの基本的な使い方はこちらの記事にまとめてあります。
Ctrl+Pageup(MacだとCtrl+fn+↑)でシートを左に移動、Ctrl+Pagedown(MacだとCtrl+fn+↓)でシートを右に移動できるショートカットキーは便利ですので是非。
Excelのメリットの1つ、シートを最大限に活用するテクニック7+1 | EX-IT

 

 

 

 

 

 

シートへのリンクを作る方法

シートへのリンクは次のように作ります。
①まずシート名(省略・短縮してもかまいません)を入力します。
スクリーンショット 2013 11 19 4 06 32

②Ctrl+Kを押し、次のような画面で、[このドキュメント内]を左のメニューから選び、さらに右のボックスで、リンクしたいシートを選択し、OKをクリックします。
スクリーンショット 2013 11 19 4 06 49

③これでリンクができ、
スクリーンショット 2013 11 19 4 07 00

クリックすると、設定したシートへ移動できます。
スクリーンショット 2013 11 19 4 08 20

 

 

□スポンサードリンク

マクロで一気に目次を作る方法

上記の設定をすべてのシートでやれば目次が完成します。
しかし、非常にめんどくさいです。
マクロで一気に作りましょう。

コードは次のとおりです。

「For i = 1 To Worksheets.Count〜Next」で、シートの数だけ、処理を繰り返します。
10枚シートがあれば、10回、100枚なら100回、「リンクを設定する」という処理を繰り返すのです。

□スポンサードリンク

「リンクを設定する」という命令は、「ActiveSheet.Hyperlinks.Add」で、細かい指定はその後の分でやっています。

「Anchor:=Range(“a” & i)」は、リンクを入れるセルの指定です。
10枚シートがある場合は、A1からA10にリンクを作り、100枚シートがある場合は、A1からA100にリンクを作るように設定しています。

「Address:=Worksheets(i).Name & “!A1″」は、リンク先のシート名の設定です。
左から順に設定していきます。

「TextToDisplay:=Worksheets(i).Name」は、セルにシート名を表示する設定です。

上記のコードだと、シート「目次」へのリンクもできてしまうので、実際に使う場合は、
・左から一番目にシート「目次」を作る
・左から2番目以降のシートの「目次」を作る
という流れにします。

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー
シート「目次」に瞬時に戻りたいなら、次のようなマクロを設定すると便利です。

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

さらにショートカットキーを設定しておきましょう。
ExcelでAlt+F8を押し、[オプション]からショートカットキーを設定できます。

スクリーンショット 2013 11 19 4 40 00

 

 

 

マウス操作がよければ各シートに目次へのリンクをつけてもいいでしょうね。
マクロをコピーして使う方法はこちらの記事を参考にしてください。
ネット上のマクロを自分のファイルに流用する方法 | EX-IT

 

 
違った視点から書いた記事です。