電気制御に関する設計業務、製作業務、ご協力いたします!

Excelのシート名を取得する方法(参考VBA、ダウンロードファイルあり)

Excelのシート名を取得する方法(参考VBA、ダウンロードファイルあり)

スポンサーリンク


このページでは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』 を押して起動すると以下の画像のような画面が開きます。

Alt + F11 を押した後の画面

 

3-3.『Alt』+『I(アイ)』を押して、『Alt』はそのまま『M』を押して標準モジュールを挿入する

『Alt』+『I(アイ)』 を押すと以下の画面状態になります。

Alt + i を押した後の画面

 

この状態で『Alt』 は離さずに 『M』 を押すと以下のように。

Alt + M を押した後の画面

 

3-4.白いところに以下のコードを貼り付ける

白いところに貼り付けた後は以下のようになりました。

VBAコードを貼り付けた後の画面

 

3-5.貼り付けたら、右上の”×”ボタンを押して閉じる

以下の部分をクリックしてウィンドウを閉じます。

コード貼付後に画面を閉じる

3-6.貼り付けたい最上段のセルで『Alt』+『F8』を押す

『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のシートをコピーしてください。

STEP1
参考ファイルを開く
参考ファイルをダウンロードして開きます
STEP2
自作のExcelファイルを開く
自分で作成したExcelファイルを開きます
STEP3
自作ファイルのシートをコピー
自分で作成したExcelファイルのシートを参考ファイルへコピーします
STEP4
参考ファイルに名前をつけて保存
シートコピーが終わったら、参考ファイルに名前をつけて保存します
STEP5
マクロを実行する
手順2-6からを実行すれば、マクロは動作します。

ご活用していただければ幸いです。

 

目次へ戻る

6.さいごに

さいごに

 

シート名一覧の取得技を使えば、簡単に目次シートを作成できます。
部下からExcelの資料を渡されて『目次』があると感心してしまいますね。
査定アップです(笑)

VBAが使えなくても手順の通りにやれば誰でもできます。
併せて参考ファイルもダウンロードしてご活用してみてください。