Sponsored Links
こんにちは!Lenocoです。本日も見てくださりありがとうございます。
今回はシート名の取得方法を学びましょう!
Sponsored Links
Contents
シート名の一覧を取得するマクロ
シートがたくさんあるエクセルファイル、シートの一覧がパッと見られたら便利だなぁと思うことはないでしょうか。
VBAを使えばあっという間にそんなマクロが作れます。
B2セルから下方向へシート名の一覧を出力するマクロを作成しました。
内容もとってもシンプルなのでぜひ見てみてください!
コード
Sub DisplaySheetList()
Const START_ROW As Long = 2
Dim sh As Worksheet
Dim row As Long
row = START_ROW
For Each sh In ThisWorkbook.Sheets
ActiveSheet.Cells(row, "B") = sh.name
row = row + 1
Next sh
End Sub
コードの説明
今回は2行目からスタートしたかったので、定数を宣言してみました。
そして、各シートを格納するためのワークシート型の変数、出力行を保存しておくrowを作成します。
最初は、2行目としたいので、定数をrowに入れておきます。
全シートをループします。
アクティブシートのB列のrow行目にシート名を入れ、rowをプラス1して、次の行にしておきます。
それを最後のシートまで繰り返します。
ややこしいですが、shには最初のシートから最後のシートすべてが入りますが、
ActiveSheetは、現在アクティブになっている1シートです。
shはインプット、ActiveSheetはアウトプットということになります。
さいごに
もし、シート名を一つ一つコピーしてシートに貼り付けて…とやっている方がいたら、
ぜひこのマクロを試してみてくださいね!!
Lenoco
Sponsored Links