VBAでは、条件が真または偽である限り処理を繰り返す Do Whileループ や Do Untilループ を使うことで、柔軟なループ処理が可能です。
本記事では、それぞれの基本構文と違いについてわかりやすく解説します。
目次
1. Do Whileループの基本構文
条件が Trueの間 処理を繰り返す
Do While 条件
'繰り返す処理
Loop
✅ ポイント:
条件
が True(真) の間、繰り返し続ける- 条件が最初からFalseの場合、1回も実行されない
例:変数が5以下の間、処理を繰り返す
Dim i As Integer
i = 1
Do While i <= 5
Debug.Print i
i = i + 1
Loop
出力結果:
1
2
3
4
5
2. Do Untilループの基本構文
条件が Falseの間 処理を繰り返す
Do Until 条件
'繰り返す処理
Loop
✅ ポイント:
条件
が False(偽) の間、繰り返し続ける- 条件が最初からTrueの場合、1回も実行されない
例:変数が5より大きい数になるまで繰り返す
Dim i As Integer
i = 1
Do Until i > 5
Debug.Print i
i = i + 1
Loop
出力結果:
1
2
3
4
5
3. Do…Loop While / Do…Loop Until の構文
処理を最低1回実行してから条件を判定
Do
'繰り返す処理
Loop While 条件
Do
'繰り返す処理
Loop Until 条件
✅ ポイント:
Do ~ Loop
の形は、先に処理を実行し、その後で条件を評価- 条件に関係なく、最低1回は処理が実行される
例:1回は必ず表示される
Dim i As Integer
i = 10
Do
Debug.Print i
i = i + 1
Loop While i <= 5
出力結果:
10
4. まとめ表:Do WhileとDo Untilの違い
ループ種別 | 条件がTrueで継続 | 条件がFalseで継続 | 処理を先に実行 |
---|---|---|---|
Do While | ✅ | ❌ | ❌ |
Do Until | ❌ | ✅ | ❌ |
Do…Loop While | ✅ | ❌ | ✅ |
Do…Loop Until | ❌ | ✅ | ✅ |
本記事では、Do WhileループとDo Untilループの基本構文と違いについてご紹介しました。
状況に応じて使い分けることで、より柔軟な繰り返し処理を記述することができます。
コメント