要点まとめ
Excel VBAの「Do Loop文」は、条件が満たされている間、同じ処理を繰り返すための仕組みです。条件の書き方によって「繰り返しが始まるタイミング」や「終了の仕方」が少し変わります。
Do Loop文の基本
- 繰り返し処理をするための構文。
- 条件が「True(真)」の間は処理を続ける。
- 条件が「False(偽)」になると繰り返しを終了する。
主な書き方の種類
- Do While … Loop
- 条件を最初にチェック。
- 条件がTrueなら処理を実行し、再度条件を確認。
- 最初からFalseなら、処理は一度も実行されない。
- Do … Loop While
- まず処理を一度実行してから条件をチェック。
- 条件がTrueなら繰り返す。
- 必ず一度は処理が実行される。
- Do Until … Loop
- 条件がFalseの間、処理を繰り返す。
- 条件がTrueになると終了。
- 「Until」は「〜になるまで」という意味。
- 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 を使うと覚えると分かりやすいです。
