Excel VBA For~Nextステートメントの使い方

Excel VBA

Excel VBA の繰り返し処理はいくつかありますが、この記事では、For~Nextステートメントの使い方について説明します。

For~Nextの構文

Do~Loopステートメントは、ループを繰り返す回数が決まっていません。

そのため、指定した条件が満たされるまで、永久にループを繰り返します。

For~Nextステートメントはループを繰り返す回数を指定できるため、繰り返す回数が決まっている場合は、For~Nextステートメントを使用します。

構文

For カウンタ変数 = 初期値 To 終了値
    ' 実行したい処理
Next カウンタ変数

カウンタ変数は、ループを数える変数です。

For~Nextの例

以下のコードでは、カウンタ変数”i”が1から10までループを繰り返します。

カウンタ変数はデフォルトで、ループするごとに”1″ずつ増えていきます。

ループの中では、カウンタ変数を変数”合計”にiの値を加算しています。

ループを抜けた後、MsgBoxで変数”合計”の値が表示されます。

Sub sample()
    Dim i    As Integer
    Dim 合計 As Integer
    合計 = 0
    
    For i = 1 To 10
        合計 = 合計 + i
    Next i
    
    MsgBox "合計は " & 合計 & " です。"
End Sub

 

Stepキーワード

For~Nextステートメントでは、デフォルトで1ずつ増加するカウンタ変数を指定しますが、Stepキーワードを使用することで、異なる増加量を指定することができます。

Stepキーワードの例

For i = 1 To 10 Step 2
    ' 2ずつ増加する処理
Next i

この例では、変数”i”は1から10まで2ずつ増加します。これにより、1, 3, 5, 7, 9といった奇数の値が順番に取得されます。

Exit Forステートメントの利用

繰り返し処理を途中で終了する場合、Exit Forステートメントを使用できます。

Exit Forの例

For i = 1 To 10
    If i = 5 Then
        Exit For
    End If
    ' 何らかの処理
Next i

この例では、変数”i”が5になると、繰り返し処理が終了します。

まとめ

今回は、Excel VBA For~Nextステートメントの使い方について説明しました。

参考
For...Next ステートメント (VBA) | Microsoft Learn
タイトルとURLをコピーしました