VBA Exit For
VBAでは、For Loopを終了させるために Exit Forコマンドを使用します。
Exit For
コードの実行がExit Forに来ると、Forループを終了し、ループの後の最初の行から実行を継続します。 Doループの終了方法を知りたい方は、こちらのリンクをクリックしてください。VBA ループの終了
条件を満たしたときのForループの終了
この例では、ある条件が満たされたときにForループを抜ける方法を説明します。ループを繰り返し、繰り返しごとに変数iの値を1ずつ増加させます。5になったらループを抜けて、メッセージボックスを表示することにしましょう。以下はそのコードです。
Dim i As Integer
For i = 1 To 10
If i = 5 Then
Exit For
End If
Next i
MsgBox "値は " & i & " です"
まず、iの値が10以下の場合にForループに入ります。
For i = 1 To 10
Next i
その後、iの値が5と等しいかどうかをIfコマンドでチェックします。もし値が5なら、Forループを抜けて、ループの後の最初の行に進みます。
If i = 5 Then
Exit For
End If
条件を満たさない場合は、次の文でiを1つ増やして、再びForループに入ります。
Next i
Forループを抜けた後に実行されるコードの最初の行は、iの値を表示したメッセージボックスです。
MsgBox "値は " & i & " です"
このコードをデバッグモードで実行すると、5回ループを通過することがわかります。5回目の繰り返しで、変数iの値が5となり、If分の中身を実行します。これで、Forループの処理が終了しました。その後、MsgBoxがポップアップしてiの値が表示されます。
画像1. Exit For ループの例