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