サーチ…
Ifステートメント
If
コントロールステートメントでは、条件付き(ブール)ステートメントの評価に応じて異なるコードを実行できます。 False
、 True
またはFalse
いずれかを評価するものです(例: x > 2
。
以下に説明するIf
文を実装する際に使用できるパターンは3つあります。 If
条件付き評価の後に常にThen
が続きます。
1. 1つのIf
条件文を評価し、それがTrue
あれば何かをする
単一行If
文
これは、 If
を使用するための最短方法であり、 True
評価時に1つのステートメントだけを実行する必要がある場合に便利です。この構文を使用する場合は、すべてのコードを1行に記述する必要があります。行末にEnd If
を含めないでください。
If [Some condition is True] Then [Do something]
If
ブロック
True
評価時に複数行のコードを実行する必要があるIf
は、 If
ブロックを使用できます。
If [Some condition is True] Then
[Do some things]
End If
複数行のIf
ブロックが使用されている場合、対応するEnd If
が必要であることに注意してください。
2. 1つの条件付きIf
文を評価し、 True
場合は1つの処理を行い、 False
場合は他の処理を行います
一行If
、 Else
ステートメント
これは、 True
評価の際に1つのステートメントが実行され、 False
評価で異なるステートメントが実行される場合に使用されます。この構文は、 Else
ステートメントがあることを読者にはあまり明確ではないので、注意してください。この構文を使用する場合は、すべてのコードを1行に記述する必要があります。行末にEnd If
を含めないでください。
If [Some condition is True] Then [Do something] Else [Do something else]
If
、 Else
ブロック
If
、 Else
ブロックを使用してコードに明瞭性を追加するか、 True
またはFalse
いずれかの評価で複数のコード行を実行する必要がある場合。
If [Some condition is True] Then
[Do some things]
Else
[Do some other things]
End If
複数行のIf
ブロックが使用されている場合、対応するEnd If
が必要であることに注意してください。
3.前のステートメントがすべてFalse
である場合、多くの条件ステートメントを評価し、ステートメントごとに異なる処理を行う
このパターンは、 If
最も一般的な使用であり、異なる処理を必要とする重複しない条件が多い場合に使用されます。最初の2つのパターンとは異なり、このケースでは、条件ごとに1行のコードしか実行されない場合でも、 If
ブロックを使用する必要があります。
If
、 ElseIf
、 ...
、 Else
ブロック
多くのIf
ブロックを別のブロックの下に1つ作成する代わりに、 ElseIf
を使用して余分な条件を評価することがElseIf
。 ElseIf
は、前のIf
評価がFalse
If
のみ評価されElseIf
。
If [Some condition is True] Then
[Do some thing(s)]
ElseIf [Some other condition is True] Then
[Do some different thing(s)]
Else 'Everything above has evaluated to False
[Do some other thing(s)]
End If
必要に応じて、 If
とEnd If
間に多くのElseIf
制御ステートメントを含めることがElseIf
。 ElseIf
を使用する場合はElse
制御文は必要ありませんが(推奨されていますが)、含まれている場合は、 End If
より前の最後の制御文にする必要があります。