エクセルの全ワークシート名の一覧とブック名を調べる方法

こんにちは~。「デザインもできるシステムエンジニア」のあつもり(@atumori17)です。このブログではAIスピーカーの使い方やエクセルVBAの情報などを発信しています。

今回はエクセルの全ワークシート名の一覧とブック名を調べる方法を紹介します。

ワークシート名を一覧に表示して、そのブックの目次を作りたいなんてことありませんか?例えばマニュアルを作るときなどです。

シートが少ないうちは良いのですが、増えてくると全てのシート名が一目で見えなくなります。そんなときにシート名の一覧表示できると便利ですよね。

レクタングル大336×280

イミディエイトウィンドウにシート名一覧を表示させる

まずは一番手っ取り早くて手軽にできる方法です。それはVisual Basic Editorのイミディエイトウィンドウを使う方法です。

今回このような4つのシートがあるブックを用意しました。

  • 作業記録表
  • Sheet1
  • Sheet2
  • Sheet3

という4つのシートがあります。この4つのシート名を取得します。

まずVisual Basic Editorを開きます。メニューの表示から「イミディエイトウィンドウ」をクリックします。Ctrl + Gでも表示できます。

するとイミディエイトウィンドウが起動しますので、以下のように入力しENTERキーを押します。
For Each i In ThisWorkbook.Sheets: ? i.Name : Next i

するとブックのシート名一覧が表示されました。

For Each i In ThisWorkbook.Sheets: ? i.Name : Next i

For Each ..Next文を使ってシートの数だけループさせています。

ThisWorkbook.Sheetsはシートの数です。

シートそのものはiですからi.Nameがシート名になります。

?i.Nameのところでイミディエイトウィンドウにシート名を表示させています。

コードウィンドウを使いシート名の一覧を表示させる

続いてコードウィンドウを使ったやりかたです。以下のコードをコードウィンドウに貼り付けます。

イミディエイトウィンドウに入力した処理と同じで、For Each ..Next文を使ってシートの数だけループさせています。そして取得したシート名を4枚目のワークシートのセルに入れています。

※ブックに4枚目のワークシートがない場合、エラーになりますので注意してください。

コードを貼り付けたら実行ボタンを押します。

Sheet3にシート名の一覧が表示されました。

シート名の一覧を表示させる方法は以上になります。

イミディエイトウィンドウにワークブック名を表示させる

最後にワークブック名をイミディエイトウィンドウに表示させる方法です。

イミディエイトウィンドウに以下のように入力しEnterキーを押します。

?Thisworkbook.Name

「日報.xls」というワークブック名が表示されました。

?ThisWorkBook.Name

Nameプロティを使いワークブックの名前を取得しています。

まとめ

いかがでしたか?今回はエクセルの全ワークシート名の一覧とブック名を調べる方法を紹介しました。マニュアルや仕様書などのドキュメントを作成するときに時短技として覚えておくとよいと思います。ぜひ試してみてください。