Worksheetsプロパティ解説(Excel VBA)

Excel VBAにおけるWorksheets プロパティの使用方法

Excel VBAの Worksheets プロパティは、ワークブック内のすべてのワークシートを取得するためのプロパティです。

使用方法

Worksheets プロパティを使用することで、ワークブック内のワークシートを操作や参照できます。

引数・パラーメータ

Worksheets プロパティは、インデックス番号やワークシートの名前を指定してアクセスすることができます。インデックスは1から始まる整数、またはワークシートの名前(文字列)で指定できます。

サンプルコード

以下は、ワークブック内のすべてのワークシート名をメッセージボックスで表示するサンプルコードです。


Sub ListAllWorksheets()
    Dim ws As Worksheet
    Dim wsNames As String

    For Each ws In ThisWorkbook.Worksheets
        wsNames = wsNames & ws.Name & vbCrLf
    Next ws

    MsgBox "ワークシート一覧:" & vbCrLf & wsNames
End Sub
    

動的な機能を持つサンプルコード

以下のサンプルコードは、指定したワークシートに移動するものです。


Sub GoToWorksheetByName()
    Dim wsName As String
    wsName = InputBox("移動したいワークシートの名前を入力してください。", "ワークシートの選択")

    If Not IsWorksheetPresent(wsName) Then
        MsgBox wsName & "というワークシートは存在しません。"
    Else
        ThisWorkbook.Worksheets(wsName).Activate
        MsgBox wsName & "に移動しました。"
    End If
End Sub

Function IsWorksheetPresent(wsName As String) As Boolean
    Dim ws As Worksheet
    For Each ws In ThisWorkbook.Worksheets
        If ws.Name = wsName Then
            IsWorksheetPresent = True
            Exit Function
        End If
    Next ws
    IsWorksheetPresent = False
End Function
    

このサンプルコードを実行すると、ユーザーが入力したワークシート名に応じて該当のワークシートがアクティブになります。

まとめ

Excel VBAの Worksheets プロパティを利用することで、ワークブック内のすべてのワークシートを取得して操作することができます。これにより、複数のワークシートを一括して操作するスクリプトなどを作成することが可能となります。