この記事では、「エクセルにてシート名の検索方法【ショートカット:目次:ハイパーリンク関数等】」について解説していきます。
やり方はそれぞれ
1.ショートカットキーでシートを切り替える
2.シート一覧を表示して目的のシートを検索する
3.目次用シートにハイパーリンクを設定する
4.関数を使用してシート名を取得する
の4種類の方法について紹介していきます。
実際のサンプルを使って詳細を見ていきます。
目次
エクセルにてシート名の検索を行う方法①【ショートカットキーを使用】
エクセルでシート名を確認しながら目的のシートを表示させるには、ショートカットキーを使うと効率よく表示できます。
ただし、この方法は手動で1つずつアクティブシートを切り替えて選択するため、目的のシートを直接選択したい、多くのシートを一気に検索したい場合は、2以降の方法を使ってみてください。
エクセルのシートの切り替え(移動)のショートカットキーは、こちらの記事で詳しく解説していますので、参考にしてみてください。
エクセルにてシート名の検索を行う方法②【一覧から選択】
エクセルのシート一覧からシートを検索する方法を見ていきます。
シートの左隅にある三角マーク(◀ ▶赤枠で囲まれた部分)の真ん中にマウスポインタを持って行き、吹き出しが出たら右クリックします。
そうすると、シート一覧(シートの選択ダイアログボックス)が表示されます。
目的のシートを選択してOKボタンを押します。シート数が多い時もシート名の検索・移動が効率的にできますので、ぜひ試してみてください。
エクセルにてシート名の検索を行う方法③【目次:ハイパーリンクを使用】
目次用のシートを用意して目的のシートを表示する方法を見ていきます。
目次用シートに目的のシートが分かりやすい名前を入力していきます。名前はシート名と一致しなくても結構です。
札幌(B4セル)を選択して、挿入メニューからリンクボタン(赤枠のボタン)を押すと、ハイパーリンクの挿入ダイアログボックスが表示されます。
ダイアログボックスのリンク先は「このドキュメント内」を選択します。シート名は「札幌支社」を選択してOKボタンを押します。
セル参照をA1にしておくと、選択したシートのA1セルに移動します。最初にアクティブにしたいセルを任意に設定できます。
「札幌」の文字が青色下線付きに変わって、リンクが設定されたことがわかります。
同様にして、仙台~福岡までリンクを設定します。
東京支社のシートを表示したい場合は、東京のセル(B6)をクリックすれば東京支社のシートが表示されます。
各支社のシートに上記と同様にして目次シートのリンクを設定しておけば、対象セル(A1セル)をクリックすれば目次シートに戻れます。
目次シートと支社シートを1クリックで行ったり来たりできて便利です。
エクセルにてシート名の検索を行う方法④【関数を使用】
関数を使用してシート名を取得する方法を見ていきます。
関数を使用して他のシートのデータを参照するときなどにシート名一覧を取得しておくと便利です。
また、「シート名の検索を行う方法③」の目次シートにシート名をそのまま設定する時に式をコピー&ペーストするだけで入力できるので、シート数が多い時にも効率的に設定できます。
少し手間がかかりますが、一度設定しておくとシートの追加・削除をしても式をコピー・削除して再計算するだけで使用できます。
具体的なやりかたは、数式メニューから名前の定義(赤枠のボタン)を選択すると、新しい名前のダイアログボックスが表示されます。
ダイアログボックスの名前は「任意の名前(例:sheetname)」を入力し、参照範囲は「=GET.WORKBOOK(1)」と入力してOKボタンを押します。
これで関数で「sheetname」と指定すればワークブック内の全シート名を取得できます。
次にシート名を表示したいセルに関数を設定します。
A2セルに「=REPLACE(INDEX(sheetname,ROW()-1),1,FIND(“]”,INDEX(sheetname,ROW()-1)),””)」と入力すると、A2セルにシート名が表示されます。
A3セル以降にA2セルの式をコピーするとROW関数の値が1つずつ増えて2番目、3番目…のシート名が表示されます。
使用している関数は以下の通りです。
・REPLACE 関数は、文字列に含まれる、指定された文字数の文字を別の文字に置き換えます。
数式:REPLACE(文字列, 開始位置, 文字数, 置換文字列)
・INDEX関数は、行番号と列番号で指定されるテーブルまたは配列の要素の値を返します。
数式:INDEX(配列, 行番号, [列番号])
・ROW関数は、引数として指定された配列の行番号を返します。
数式:ROW([範囲])
・FIND関数は、指定された文字列を他の文字列の中で検索し、その文字列が最初に現れる位置を左端から数え、その番号を返します。
数式:FIND(検索文字列, 対象, [開始位置])
A2セルに入力した数式は定義した名前「sheetname」で取得したシート名の配列から1番目のシート名を取得しています。
シート名は[ファイル名]+シート名([ファイル名]Sheet1)になるため、REPLACE関数でファイル名を囲むカッコ[ ]とファイル名を空白“”で置換してシート名のみを表示しています。
少し複雑な関数になっていますが、コピーして使用してみてください。
参考としてA2セルのREPLACE関数の中のそれぞれの関数の結果を表示しておきます。
まとめ
今回の記事では、「エクセルにてシート名の検索を行う方法」について解説してきました。
ショートカットキーやマウスの右クリックを使いこなせば、作業効率がアップします。
また、関数を組み合わせて使用すると手作業を大幅に削減することもできるようになります。
エクセルの機能は多岐にわたりますが、仕組みを作ってしまえば効率は格段に上がりますので、使いこなして業務に役立てて行きましょう。