【VBA】特定の名前のシートを完全一致で配列に格納する方法
手作業では時間がかかる特定の名前のシートの取り扱いを、VBAを使って効率化しましょう。この記事では、完全一致で指定した名前のシートを配列に格納する方法を紹介します。
サンプルコード
VBA
Option Explicit
Sub StoreSheetsInArray()
Dim ws As Worksheet
Dim sheetNames() As Variant
Dim i As Integer, j As Integer
ReDim sheetNames(1 To ThisWorkbook.Sheets.Count)
' 配列に格納するシート名を指定
For Each ws In ThisWorkbook.Worksheets
If ws.Name = "特定のシート名" Then
i = i + 1
ReDim Preserve sheetNames(1 To i)
sheetNames(i) = ws.Name
End If
Next ws
' 配列を表示するためのサンプルコード(実際には不要)
For j = LBound(sheetNames) To UBound(sheetNames)
Debug.Print sheetNames(j)
Next j
End Subよくある質問
Q 元に戻せますか?
A.
VBAの実行結果は「元に戻す」が効きません。必ずバックアップを取ってから実行してください。
Q エラーが出たら?
A.
シート名や列番号が正しいか確認してください。