Excel VBA | Do Loop文

VBA
スポンサーリンク

要点まとめ

Excel VBAの「Do Loop文」は、条件が満たされている間、同じ処理を繰り返すための仕組みです。条件の書き方によって「繰り返しが始まるタイミング」や「終了の仕方」が少し変わります。


Do Loop文の基本

  • 繰り返し処理をするための構文。
  • 条件が「True(真)」の間は処理を続ける。
  • 条件が「False(偽)」になると繰り返しを終了する。

主な書き方の種類

  1. Do While … Loop
    • 条件を最初にチェック。
    • 条件がTrueなら処理を実行し、再度条件を確認。
    • 最初からFalseなら、処理は一度も実行されない。
  2. Do … Loop While
    • まず処理を一度実行してから条件をチェック。
    • 条件がTrueなら繰り返す。
    • 必ず一度は処理が実行される。
  3. Do Until … Loop
    • 条件がFalseの間、処理を繰り返す。
    • 条件がTrueになると終了。
    • 「Until」は「〜になるまで」という意味。
  4. Do … Loop Until
    • 処理を一度実行してから条件を確認。
    • 条件がFalseなら繰り返す。

注意点

  • 条件がずっとTrueのままだと無限ループになる。
    → ループの中で変数を更新して、条件が変わるようにする必要がある。
  • 「While」と「Until」の違いは、条件を「Trueで続ける」か「Falseで続ける」か。

サンプルイメージ

Dim num As Integer
num = Range("B2").Value

Do While num > 5
    Debug.Print "数値 = " & num
    num = num - 5
Loop
VB
  • セルB2の値から5を引き続け、5以下になるまで繰り返す。

初心者へのポイント

  • 「While=条件が真の間続ける」
  • 「Until=条件が偽の間続ける」
  • 「Doの後に条件を書くか、Loopの後に条件を書くか」で、最初に処理が実行されるかどうかが変わる。

つまり、「必ず一度は処理したい」なら Do … Loop While/Until を使う、「条件を満たしている時だけ処理したい」なら Do While … Loop / Do Until … Loop を使うと覚えると分かりやすいです。

タイトルとURLをコピーしました