VBAの繰り返し処理(ループ処理)って結構便利みたいです。
VBAの繰り返しコマンド
VBAである条件を満たすまで
繰り返し処理を行うことができる
コマンドは
For Next文
For Each Next文
While Wend文
Do While Loop文
Do Until Loop文
などがあります。
VBA特化の便利な繰り返しコマンド
ここでVBAならではの、繰り返しコマンドの特徴として
コマンドの書き方しだいで条件判断を後に持っていける
繰り返しコマンドが存在します。
それは、「Do」を用いた繰り返しコマンドです。
このコマンドに限っては、
条件判断を、
処理前に行ったり、
処理後に行ったりすることが出来ます。
Doを用いた処理前に条件判断する構文
構文はこうなります。
Do While 条件式 条件成立中ならループする処理 Loop Do Until 条件式 条件が不成立ならループする処理 Loop
While、Untilどちらも「Do」構文になっているので
中のループ処理を強制的に抜けるには、
「Exit Do」ループ処理内で使います。
Doを用いた処理後に条件判断する構文
プログラムの流れで処理をした結果で、
再処理を行うような場合が多くあります。
そんな時とても重宝です。
構文はこのように
Do ループ処理 Loop While 条件式 ’(条件成立時は、Doへ戻って再びループ処理を行う) Do ループ処理 Loop Until 条件式 ’(条件が成立するまで、Doへ戻って再びループ処理を行う)
この場合も
While、Untilどちらも「Do」構文になっているので
Doへ戻らずに次のステップへ移行させるには、
ループ処理の中で「Exit Do」を実行させることになります。