【用語集に記載の内容について】
用語集に記載されているメソッドや関数の引数は、VBAエキスパート試験の試験範囲に基づいており、すべての引数を網羅しておりません。
また、書式は公式テキストの記載に準じています。
試験範囲外の引数や詳細については、ヘルプ機能やオブジェクトブラウザーをご参照ください。
【コードをコピーして実行する場合の注意】
文字コードの関係上、半角の「¥」は「/」で表示されるため、当サイトでは全角の「¥」で記載しています。当サイトのコードをコピーして実行する場合は、全角の「¥」を半角の「¥」に変換してください。
Ifステートメント
名称 | Ifステートメント |
---|---|
説明 | 条件分岐を表す命令です。 二値を判定する場合は、Ifステートメントを使用します。 二値とは、「〇〇か、そうでないか」という2つの値です。 二値の判定とは、「〇〇なら処理1、〇〇でなければ処理2」という判定です。 【比較】 二値以外の条件分岐は、Select Caseステートメントを使用して、「〇〇なら処理1」「××なら処理2」「△△なら処理3」…というように複数の条件を記述します。 |
書式 |
【単一条件の書式①】 If 条件 Then 処理 条件が正しいときに処理を実行し、正しくないときは何もしません。 End IFは不要です。 この書式は1行なので、1つの処理しか指定できません。 【単一条件の書式②】 If 条件 Then 処理 End If 条件が正しいときに処理を実行し、正しくないときは何もしません。 この書式は、処理を複数行に渡って記述できるので、複数の処理を指定できます。 【二値の判定】 If 条件 Then 処理1 Else 処理2 End If 条件が正しいときに処理1を実行し、正しくないときに処理2を実行します。 この書式は、処理を複数行に渡って記述できるので、複数の処理を指定できます。 |
コード例① |
【単一条件:1行で記述】 Sub Macro1() Dim num As Integer num = 10 If num > 5 Then MsgBox "numは5より大きいです" End Sub <変数numの値が5より大きい場合> 「numは5より大きいです」のメッセージボックスを表示します。 実行すると、変数numの値は10なので、メッセージボックスが表示されます。 |
コード例② |
【二値の判定】 Sub Macro2() Dim num As Integer num = 3 If num > 5 Then MsgBox "numは5より大きいです" Else MsgBox "numは5以下です" End If End Sub <変数numの値が5より大きい場合> 「numは5より大きいです」のメッセージボックスを表示します。 <変数numの値が5以下の場合> 「numは5以下です」のメッセージボックスを表示します。 実行すると、変数numの値は3なので、「numは5以下です」のメッセージボックスが表示されます。 |
コード例③ |
【複数条件をAnd演算子で記述】 Sub Macro3() Dim num As Integer num = 15 If num >= 10 And num <= 20 Then MsgBox "numは10以上、20以下です" End If End Sub 【Ifステートメントをネストして複数条件(And)を記述】 Sub Macro4() Dim num As Integer num = 15 If num >= 10 Then If num <= 20 Then MsgBox "numは10以上、20以下です" End If End If End Sub Macro3は、And演算子を使用して複数条件を判定します。 Macro4は、Ifステートメントをネストして、複数条件を判定します。(ネストとは、1つのFor…Nextステートメントの中に別のFor…Nextステートメントを入れることを指します。) 記述方法は異なりますが、Macro3とMacro4の実行結果は同じです。 <変数numの値が10以上、かつ20以下の場合> 「numは10以上、20以下です」のメッセージボックスを表示します。 実行すると、変数numの値は15なので、メッセージボックスが表示されます。 |
コード例④ |
【複数条件をOr演算子で記述】 Sub Macro5() Dim num As Integer num = 11 If num < 1 Or num > 10 Then MsgBox "範囲外の数です" End If End Sub 【複数のIfステートメントで、複数条件(Or)を記述】 Sub Macro6() Dim num As Integer num = 11 If num < 1 Then MsgBox "範囲外の数です" End If If num > 10 Then MsgBox "範囲外の数です" End If End Sub Macro5は、Or演算子を使用して複数条件を判定します。 Macro6は、複数のIfステートメントで、複数の条件を判定します。 記述方法は異なりますが、Macro5とMacro6の実行結果は同じです。 <変数numの値が1より小さい、または10より大きい場合> 「範囲外の数です」のメッセージボックスを表示します。 実行すると、変数numの値は11なので、メッセージボックスが表示されます。 |
カテゴリ | ベーシック・スタンダード |