For Each~Nextステートメントは、配列やコレクション内のメンバーごとに要素数分処理を繰り返します。
For Each 変数 in 配列(オブジェクト)
Next 変数
以下のサンプルでは配列の要素が1つ取り出されて、変数vに格納されます。 変数にはバリアント型かオブジェクト型を指定します。
Sub GetArray()
Dim strArray(3) As String
strArray(0) = "A"
strArray(1) = "B"
strArray(2) = "C"
strArray(3) = "D"
For Each v In strArray
Debug.Print v
Next v
End Sub
以下のサンプルではセル範囲A1:E3にカウントアップした数値をセットしています。
Sub SetCellsValue()
Dim i As Integer
Dim obj As Object
i = 1
For Each obj In Worksheets("Sheet1").Range("A1:E3")
obj.Value = i
i = i + 1
Next obj
End Sub
実行結果 |
---|