| 分類 | ステートメント | 説明 |
|---|---|---|
| 条件文 | If ... Then ... Else | 条件が真または偽の場合、分岐 |
| Select Case | 条件セットから分岐先を選択 | |
| ループ処理 | Do ... Loop | 条件が真の間、または真になるまでループ |
| For ... Next | カウンタを使用し、ステートメントを指定回数だけ実行 | |
| For Each ... Next | コレクションのオブジェクトごとに、ステートメントをくり返し実行 | |
| 終了 | Exit | コードブロックの終了 |
| End | コードブロックの終了 | |
| With | オブジェクトの指定の省略 |
If condition Then [statements] [ ElseIf condition-n Then [statements] ] [ Else [statements] ] End If※[ ]内は省略可
Select Case test-expression
[ Case expression-list-n
[statements] ]
[ Case Else
[statements] ]
End Select
ループに入る前に条件を評価する方法と、ループを実行した後で評価する方法の2種類があります。
| キーワード | ループをくり返す条件 |
|---|---|
| While | 条件が真の間 |
| Until | 条件が真になるまで |
Do { While | Until } condition
[statements]
[ Exit Do ]
[statements]
Loop
※{ a | b }は、aまたはbのキーワードを指定
Do
[statements]
[ Exit Do ]
[statements]
Loop { While | Until } condition
For counter = start To end [ Step step ] [statements] [ Exit For ] [statements] Next [ counter ]
コレクションの各オブジェクトまたは配列の各要素に対して、一連のステートメント ブロックをくり返し実行します。
For Each element In group [statements] Next [element]
ループやプロシージャを抜けさせます。
| 分類 | ステートメント | 抜ける対象 |
|---|---|---|
| ループ | Exit Do | Doループ |
| Exit For | Forループまたは For Eachループ | |
| プロシージャ | Exit Function | Functionプロシージャ |
| Exit Property | Propertyプロシージャ | |
| Exit Sub | Subプロシージャ |
プロシージャやブロック (ステートメントの集まり) を終了させます。
| ステートメント | 終了させる対象 |
|---|---|
| End | プログラム |
| End If | Ifステートメント |
| End Select | Selectステートメント |
| End With | Withステートメント |
| End Function | Functionステートメント |
| End Sub | Subステートメント |
| End Property | Propertyプロシージャ |
| End Type | Typeステートメント |