反復 | 所定回反復 | For-Next構造 | |
---|---|---|---|
条件反復 | 前置判定 | While-Wend構造 | |
Do While-Loop構造 | |||
Do Until-Loop構造 | |||
後置判定 | Do-Loop While構造 | ||
Do-Loop Until構造 |
For (変数名)=(初期値) To (終了値) Step (増減値)
....
Next [(変数名)]
この構造は変数に初期値を代入し、増減値を足して終了値になるまで Forキーワードと Nextキーワードで囲まれた部分を繰り返します。変数が終了値になった場合も囲まれた部分が一回実行されることに注意してください。
次に条件反復ですが、これには様々な記述方法があります。順に解説します。
While-Wend構造は過去との互換性確保のために残されています。できればこの構造の代わりに Do While-Loop構造に統一した方がよいと思います。以下が構文です。
While (条件式)
....
Wend
条件式は真偽式、もしくは数式を指定します。数式を指定した場合、その式の結果が 1なら真、0なら偽となります。以下の条件式すべてにこの規則が適用されます。
Do While-Loop構造と Do Until-Loop構造の違いは条件式の扱い方が異なることです。Do While-Loop構造の場合は条件式が真の時、逆に Do Until-Loop構造の場合は条件式が偽の時に囲まれた部分が実行されます。以下が構文です。
Do While (条件式)
....
Loop
Do Until (条件式)
....
Loop
Do While/Until-Loop構造と Do-Loop While/Until構造の違いはまず判断を行うか、囲まれた部分が一回実行されて判断が行われるかの違いです。Whileキーワードと Untilキーワードの意味は上を参照してください。以下が構文です。
Do
....
Loop While (条件式)
Do
....
Loop Until (条件式)
そして最後にこれらの反復から抜けるための命令について解説します。
While-Wend構造以外には反復からの脱出の命令が定義されています。For-Next構造ではExit For命令、Do While/Wend-Loop構造と Do-Loop While/Until構造では Exit Do命令を使って抜け出すことが可能です。これらの命令の使用で最も近くの反復を抜け出せます。一気に何段階かの反復を抜け出したい時には Goto命令を使ってください。