Excel VBA | Exit文

VBA
スポンサーリンク

要点まとめ

Excel VBAでは、繰り返し処理(ループ)を途中でやめたいときに Exit文 を使います。代表的なのは Exit DoExit For で、条件を満たしたらすぐループを抜けて次の処理へ進めます。


Exit文の種類

  • Exit Do : Do~Loop の繰り返しを途中で終了
  • Exit For : For~Next の繰り返しを途中で終了
  • (他にも Exit Sub, Exit Function, Exit Property があるが、別ページで解説)

Exit Do の使い方

  • Do While~Loop の中で条件を満たしたら Exit Do を書く
  • すると、その場でループを抜けて次の処理へ進む
  • ネスト(入れ子)になっている場合は、内側のループだけ終了する

Do While Cells(rowno, 1).Value <> ""
    sum = sum + Cells(rowno, 2).Value
    If sum > 200 Then Exit Do
    rowno = rowno + 1
Loop
VB

→ 合計が200を超えたらループを終了する。


Exit For の使い方

  • For~Next の中で条件を満たしたら Exit For を書く
  • すると、その場でループを抜けて次の処理へ進む
  • ネストしている場合は、内側のループだけ終了する

For i = 1 To 8
    num = Int(10 * Rnd + 1)
    If num = 7 Then
        Debug.Print "当選"
        Exit For
    End If
Next i
VB

→ 乱数で「7」が出たらループを終了する。


ポイント

  • Exit文は「条件を満たしたらすぐ抜ける」ための便利な仕組み
  • 条件式だけでループを制御するより、コードがすっきり読みやすくなる
  • ネストした場合は「内側のループだけ終了」することを覚えておくと混乱しない

初心者の方は「ループを途中で止めたいときは Exit Do / Exit For を使う」と覚えておけば十分です。慣れてきたら、条件式だけで書く方法と比べてみると理解が深まります。

VBA
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました