条件がTrueの間処理を繰り返すには、通常Do While文を使用します。
よって別段使用する必要はありませんが、その他の方法として、
While~Wendステートメントを使用することもできます。
基本構文
While 条件式 繰り返す処理 Wend
サンプルコード
Dim i As Long: i = 1 While i <= 5 Debug.Print i ' 1, 2, 3, 4, 5までが表示される i = i + 1 Wend
解説
While~Wendステートメントは、
条件式がTrueの間、WhileからWendまでの処理を繰り返し実行します。
サンプルコードではiを1ずつ増やし、5を超えた時点で繰り返しを終了します。
While Wend文はDo While文と同じ挙動になるステートメントで、
以下のコードは全く同じ結果になります。
Dim i As Long: i = 1 While i <= 5 Debug.Print i ' 1, 2, 3, 4, 5までが表示される i = i + 1 Wend
Dim i As Long: i = 1 Do While i <= 5 Debug.Print i ' 1, 2, 3, 4, 5までが表示される i = i + 1 Loop
ただしWhile Wend文はDo While~Loopの下位互換と言ってよい構文で、
ループを途中で終了するExit Whileがありません。
While Wend文は旧バージョンとの互換性のために残っている機能のようで、
特段使う必要はありません。
基本的にはDo While~Loop文を使用しましょう。