Vba-do-while-loop

提供:Dev Guides
移動先:案内検索

VBA-Do-Whileループ

*Do…While* ループは、条件が真である限り、一連のステートメントを繰り返したいときに使用されます。 条件は、ループの開始時またはループの終了時に確認できます。

構文

VBAの Do…While ループの構文は次のとおりです。

Do While condition
   [statement 1]
   [statement 2]
   ...
   [statement n]
   [Exit Do]
   [statement 1]
   [statement 2]
   ...
   [statement n]
Loop

流れ図

VBA Do..Whileステートメント

次の例では、 Do…while ループを使用して、ループの最初の状態を確認します。 条件がTrueになった場合にのみ、ループ内のステートメントが実行されます。

Private Sub Constant_demo_Click()
   Do While i < 5
      i = i + 1
      msgbox "The value of i is : " & i
   Loop
End Sub

上記のコードが実行されると、メッセージボックスに次の出力が出力されます。

The value of i is : 1

The value of i is : 2

The value of i is : 3

The value of i is : 4

The value of i is : 5

代替構文

ループの最後に条件をチェックする Do…while ループの代替構文もあります。 これら2つの構文の主な違いは、次の例で説明されています。

Do
   [statement 1]
   [statement 2]
   ...
   [statement n]
   [Exit Do]
   [statement 1]
   [statement 2]
   ...
   [statement n]
Loop While condition

次の例では、 Do…while ループを使用して、ループの最後の条件を確認します。 条件がFalseの場合でも、ループ内のステートメントは少なくとも1回実行されます。

Private Sub Constant_demo_Click()
   i = 10
   Do
      i = i + 1
      MsgBox "The value of i is : " & i
   Loop While i < 3 'Condition is false.Hence loop is executed once.
End Sub

上記のコードが実行されると、メッセージボックスに次の出力が出力されます。

The value of i is : 11