Worksheetの名前一覧を取得して、デバッグ画面に出力します。
Sheetが見つからない際に、追加を行いたい場合は、シート名の確認、無い場合は追加 を参照。
' ファイルを開いてSheet名の一覧を取得する
Sub Sample3()
Dim idx1 As Integer
Dim wb As Workbook
Dim filename As String
Dim list() As Variant
filename = "C:\ExcelVBA\Sample.xlsx"
If IsFileExists(filename) = True Then ' ファイルの有無を確認
' ブックを開く
Set wb = Workbooks.Open(filename)
' Sheetの一覧を取得する
list = GetSheetList(wb)
' 取得したSheetの一覧をデバッグ出力
For idx = 1 To UBound(list)
' Sheet名をデバッグ出力
Debug.Print list(idx)
Next idx
End If
End Sub
【関数化】
' ------------------------------------------------------------
' 説明:Sheet名の一覧を取得する
' 引数:1:処理対象のワークブック
' 戻値:シート名の一覧
' ------------------------------------------------------------
Function GetSheetList(wb As Workbook) As Variant
Dim idx1 As Integer
Dim list() As Variant
' Sheet数分のデータ領域を確保
ReDim list(wb.Sheets.Count)
' Sheet名の一覧を取得
For idx1 = 1 To wb.Sheets.Count
list(idx1) = wb.Sheets(idx1).Name
Next
GetSheetList = list
End Function




コメント