配列操作

「ブック内のシート名を配列で全取得する」処理をパーツ化する【ExcelVBA】

指定エクセルブックのシート名を配列で管理したい場合があります。
パーツ化した処理で配列にシート名を一括で格納します。

ブック内のシート名を配列で全取得するサンプルコード

'■指定ブックのシート名を配列に格納する
Public Function call_GetSheetNameToArray(wb As Workbook)
    
    '■指定ブックのシート数の配列を作成
    Dim tmp As Variant
    ReDim tmp(1 To wb.Worksheets.Count)

    '■指定ブックのシートを配列に格納
    Dim i As Long
    For i = 1 To wb.Worksheets.Count
        tmp(i) = wb.Worksheets(i).Name
    Next i
    
    call_GetSheetNameToArray = tmp
End Function

実際の使い方

Public Sub sample()

    Dim shNameArray As Variant
    shNameArray = call_GetSheetNameToArray(ActiveWorkbook)’ActiveWorkbookのシート名をShNameArrayに格納
End Sub

その他

  • Worksheets.Countで都度ループさせることができますが、配列に入れた方が便利な場合は本コードを使用します。

関連記事

コメント

タイトルとURLをコピーしました