以下のコードを実行した際の結果として、最も適切なものはどれか。以下の選択肢より1つ解答しなさい。
ただし、Aには数値の「15」が入力されたものと仮定します。
Sub Exam1()
Dim A As Long
A = 15 ' この値を入力されたものと仮定します
If A > 10 Then
MsgBox "入力値は10より大きい。"
End If
End Sub
1.コードは正常に実行され、メッセージボックスに「入力値は10より大きいです。」と表示されるものである。
2.コードは正常に実行されるが、メッセージボックスは何も表示されない。
3.コンパイルエラーが発生する。
4.実行時エラーが発生する。
正解
1
解説
【4章 ステートメント】
【If ステートメント ひとつの条件で処理を分岐】
●Ifステートメント設定した条件が正しい時(合うとき)は、指定の処理を行う条件分岐のステートメントです。
・条件を設定する時の「=」代入でなく等しいという意味で使います。
●構文1
If 条件 Then 処理
条件に合う時は処理を行ないます。条件が合わないとき時は何もしません。
・設定できる処理は1つのみです。
【コード解説】
以下のコードを実行した際の結果として、最も適切なものはどれか。以下の選択肢より1つ解答しなさい。
ただし、Aには数値の「15」が入力されたものと仮定します。
Sub Exam1()
Dim A As Long
A = 15
' 変数に15を代入する。
If A > 10 Then
’条件分岐 もし変数の値が銃より大きい時は以下の処理を実行します。
MsgBox "入力値は10より大きい。"
’メッセージを表示する。
End If
End Sub

1.コードは正常に実行され、メッセージボックスに「入力値は10より大きいです。」と表示されるものである。
正しい。
Aが15の場合、A > 10の条件は真となるため、Then以降のMsgBoxの処理が実行されます。
2.コードは正常に実行されるが、メッセージボックスは何も表示されない。
誤り。
Aが15であるため、条件ValueA > 10は満たされ、メッセージボックスが表示されます。
3.コンパイルエラーが発生する。
誤り。
示されたコードはVBAの構文規則に則っており、コンパイルエラーは発生しません。
4.実行時エラーが発生する。
誤り。
Aには数値の15が正しく代入されており、変数の型Longに適合するため、実行時エラーは発生しません。