【Excel VBA】Do Loopステートメントまとめ

【Excel VBA】Do Loopステートメントまとめ

Do Loopステートメントについては4つの類型があることを紹介してきました。

ここでこの4類型をどのように使い分けを行えば良いのか、まとめていきます。

Do Loopステートメントの使い分けの基準

使い分けを行なうための判断基準は2つあります。

  • 条件は「満たしたときに処理を行う」、「満たさないときに処理を行う」のどちらにするか
  • 繰り返し処理は少なくとも1回は実行しないといけないのか

この2点でマトリクス上にまとめると下図のようになります。

Do Loopステートメント使い分け早見表

それぞれの詳細については、過去記事をご参照いただければと思いますが、辿りやすいようにさらにこのマトリクスをA~Dまでのアルファベットを下図の通りに割り当てます。

Do Loopステートメント使い分け早見表②

以下、このアルファベットに関連する過去記事にて詳細を確認してください。

詳細

A・C

【Excel VBA】Do~Loop While(Until)ステートメントで少なくとも1回は繰り返す処理を実行する方法 | Excelを制する者は人生を制す ~No Excel No Life~

少なくとも1回は処理を行いたい場合はこちらをご参照ください。

条件が「満たすときに処理」、「満たさないときに処理」のいずれも対象になっています。

B

【Excel VBA】Do While~Loopステートメントで条件を満たした時に同じ処理を繰り返す方法 | Excelを制する者は人生を制す ~No Excel No Life~

条件が「満たすときに処理」、つまり真の場合(TRUE)であり、繰り返し処理はケースによっては実行されないことも起こりうる場合はこちらをご参照ください。

D

【Excel VBA】Do Until~Loopステートメントで条件を満たさない時に同じ処理を繰り返す方法 | Excelを制する者は人生を制す ~No Excel No Life~

条件が「満たさないときに処理」、つまり偽の場合(FALSE)であり、繰り返し処理はケースによっては実行されないことも起こりうる場合はこちらをご参照ください。

まとめ

Do Loopステートメントを使う場合、前述の2つの質問を自分に投げかけてから決めると良いですね。

  • 条件は「満たしたときに処理を行う」、「満たさないときに処理を行う」のどちらにするか
  • 繰り返し処理は少なくとも1回は実行しないといけないのか

どうしてもわからない場合はとりあえず少しずつコードに起こしながら微調整・軌道修正をはかっていけば良いですね。