スポンサーリンク
このページではExcelで作成したシート名を取得する方法をご紹介しています。
※参考ファイルのダウンロードもあり
あなたはExcelをよく使いますか?
Excelを開くと下にある『シート』を分けて作ったりできるので便利ですよね。
私は表計算やデータの取得などで日々使用していますが、つい先日『いっぱいシートを作ったけど、一覧がほしいなぁ』という困りごとがありました。
同じことを考える人はいるんじゃないか、と思ってこの記事を作成しました。
ここに書かれている通りにやれば『シート名一覧』をサクッと作れるので、見る人に親切なワンランク上の資料にできます。
VBAができなくても、書かれている通りにやれば誰でも作成可能です。
ちょっと考えたら意外と簡単に取得できることがわかりましたので、みなさんにその方法を紹介します。
※追記
VBAを組み込んだ参考ファイルをダウンロード出来るようにしました。
早くファイルをダウンロードしたい方は、目次から『ダウンロード』へどうぞ。
スポンサーリンク
1.たくさんのシート一覧がほしいっ!
資料作成や計算するために使うExcelですが、シートが分けられるのは使い勝手がいいですよね。
私もそれぞれの個別シートと、まとめのシートを作成して、提出するのはまとめのシートだけを印刷したりして活用しています。
ですが、個別シートが多い場合など、一覧が欲しい場合があるんですよね。
少なければ手打ちで一覧を作成してもいいのですが、先日は個別シートが43シートもあったので「うわっ、めんどくさい・・・」って感じになっちゃいました。
そこで、シート一覧を取得するためにどうすればよいか、今後も使えそうなので少し考えてみることにしました。
意外と簡単にできることが分かったのでやってみたところ、うまくできました。
VBAを使用しますが、このページからコピー&ペーストすれば簡単にできるようにしてご紹介します。
また、ダウンロードも出来ますので参考にしてみてください。
2.どうやって取得するの?
では、実際にどうやって取得するのか手順通りに説明します。
2-1.Excelを起動してワークブックを開いている状態にする
2-2.『Alt』+『F11』を押してVBAを起動する
2-3.『Alt』+『I(アイ)』を押して、『Alt』はそのまま『M』を押して標準モジュールを挿入する
2-4.白いところに以下のコードを貼り付ける
(以下、コード)
ーーーーーーーーーーーーーーー
Sub test()
Dim i As Long
Dim Addc As Long
Dim Addr As Long
Dim n As Long
Addc = ActiveCell.Column
Addr = ActiveCell.Row
For i = 1 To Sheets.Count
n = Addr + i – 1
Cells(n, Addc).Value = Worksheets(i).Name
Next i
End Sub
ーーーーーーーーーーーーーーー
2-5.貼り付けたら、右上の”×”ボタンを押して閉じる
2-6.貼り付けたい最上段のセルで『Alt』+『F8』を押す
2-7.”test”というマクロが出ているので、そのまま『Enter』を押す
2-8.選択していたセルから下へシート名が貼り付けられる
と、こんな感じでできます。
言葉だけではわかりにくいので、ものは試しで実際にやってみましょう。
3.シート一覧を取得してみよう
前述の手順通りに作成するときの方法を画像付きで説明します。
3-1.Excelを起動してワークブックを開いている状態にする
以下が起動後の画像です。
画像ではシートが sheet1 ~ sheet5 の5シートあります。この5シートのシート名を取得しましょう。
セルは”B3”を選択しています。”B3”から縦にシート名を貼り付けます。
3-2.『Alt』+『F11』を押してVBAを起動する
『Alt』+『F11』 を押して起動すると以下の画像のような画面が開きます。
3-3.『Alt』+『I(アイ)』を押して、『Alt』はそのまま『M』を押して標準モジュールを挿入する
『Alt』+『I(アイ)』 を押すと以下の画面状態になります。
この状態で『Alt』 は離さずに 『M』 を押すと以下のように。
3-4.白いところに以下のコードを貼り付ける
白いところに貼り付けた後は以下のようになりました。
3-5.貼り付けたら、右上の”×”ボタンを押して閉じる
以下の部分をクリックしてウィンドウを閉じます。
3-6.貼り付けたい最上段のセルで『Alt』+『F8』を押す
『Alt』+『F8』 を押すと以下のウィンドウを表示します。
3-7.”test”というマクロが出ているので、そのまま『Enter』を押す
そのまま 『Enter』 を押しましょう。
3-8.選択していたセルから下へシート名が貼り付けられる
選択していた”B3”から縦にシート名がすべて貼り付けられました。
と、こんな感じでとても簡単にできます。
初めてやるときには新しいブックで試してみるといいですよ。
4.横にシート一覧を取得したい場合は?
ここまでで紹介した方法は選択中のセルから縦に貼り付けしました。
横に貼り付けたいときもありますよね?
最初から縦と横でマクロを作成しておけば解決です!
ということで、コードを貼り付けする2-4の手順の時に、以下のコードを貼り付けてみてください。
(以下、コード)
ーーーーーーーーーーーーーーー
Sub tate()
Dim i As Long
Dim Addc As Long
Dim Addr As Long
Dim n As Long
Addc = ActiveCell.Column
Addr = ActiveCell.Row
For i = 1 To Sheets.Count
n = Addr + i – 1
Cells(n, Addc).Value = Worksheets(i).Name
Next i
End Sub
ーーーーーーーーーーーーーーー
Sub yoko()
Dim i As Long
Dim Addc As Long
Dim Addr As Long
Dim n As Long
Addc = ActiveCell.Column
Addr = ActiveCell.Row
For i = 1 To Sheets.Count
n = Addc + i – 1
Cells(Addr, n).Value = Worksheets(i).Name
Next i
End Sub
ーーーーーーーーーーーーーーー
すると、2-6の手順では以下のウィンドウになります。
2-7の手順では、”そのまま『Enter』”ではなく
縦に貼り付けしたければ”tate”を選択
横に貼り付けしたければ”yoko”を選択
選択したあと、実行をクリックします。
すると、2-8の手順では、”tate”を選択した場合は3項で紹介した画像のようになります。
”yoko”を選択すると、以下のように貼り付けられます。
これで、いつでも縦にも横にもシート名一覧を作成できるようになりました。
スポンサーリンク
5.ダウンロード
参考ファイルのダウンロードは以下のパスワードをコピーして入力欄に貼り付けて、Downloadボタンをクリックしてください。
PASS:sheet-name
使い方としては、参考ファイルに自分で作成したExcelのシートをコピーしてください。
ご活用していただければ幸いです。
6.さいごに
シート名一覧の取得技を使えば、簡単に目次シートを作成できます。
部下からExcelの資料を渡されて『目次』があると感心してしまいますね。
査定アップです(笑)
VBAが使えなくても手順の通りにやれば誰でもできます。
併せて参考ファイルもダウンロードしてご活用してみてください。