Access VBA ベーシック 模擬問題 模擬試験

Access VBA ベーシック 模擬問題 ① 第9問 4章

以下のコードを実行した際の結果として、最も適切なものはどれか。以下の選択肢より1つ解答しなさい。

ただし、InputBoxには文字列の「B」が入力されたものと仮定します。

 

Sub Exam1()

 Dim N As String

 N = InputBox("成績をアルファベットで入力してください (A, B, C)")

  Select Case N

   Case "A"

   MsgBox "素晴らしい成績です!"

   Case "B", "C"

   MsgBox "良い成績です。"

   Case Else

  MsgBox "その他の成績です。"

 End Select

End Sub

 

1.コードは正常に実行され、メッセージボックスに「素晴らしい成績です!」と表示される。

2.コードは正常に実行され、メッセージボックスに「良い成績です。」と表示される。

3.コードは正常に実行され、メッセージボックスに「その他の成績です。」と表示される。

4.コンパイルエラーが発生する。

 

正解

2

解説

【4章 ステートメント】

【Select Caseステートメント 対象の値で処理を分岐】

指定の値を、複数の判定条件で処理するときはSelect Caseステートメントを使用します。

どの条件にも一致しない場合の処理には、Case Elseを使用します。

構文:Select Case 値

Case 条件1

処理1

Case Else 【その他の場合】

その他の処理

End Select

Caseに続く条件に、複数の条件を指定するときは以下のように指定します。

または10…Case 1, 10 「,」カンマで区切り条件を複数指定する。

1から10…Case 1 To 10 「To」 を使用し条件の範囲を指定する。

 

【コード解説】

以下のコードを実行した際の結果として、最も適切なものはどれか。以下の選択肢より1つ解答しなさい。

ただし、InputBoxには文字列の「B」が入力されたものと仮定します。

 

Sub Exam1()

 Dim N As String

 N = InputBox("成績をアルファベットで入力してください (A, B, C)")

’InputBox関数の戻り値を変数Nに代入する。

 Select Case N

’Select Caseステートメントで変数Nについて判定する。

 Case "A"

’変数Nが「A」の時は以下の処理を実行する。

 MsgBox "素晴らしい成績です!"

 Case "B", "C"

’変数Nが「B」または「C」の時は以下の処理を実行する。

 MsgBox "良い成績です。"

 Case Else

’変数Nが上記の条件以外の時は以下の処理を実行する。

 MsgBox "その他の成績です。"

 End Select

End Sub

1.コードは正常に実行され、メッセージボックスに「素晴らしい成績です!」と表示される。

誤り。

Nに「B」が入力された場合、Case "A"の条件は満たされないため、このメッセージは表示されません。

2.コードは正常に実行され、メッセージボックスに「良い成績です。」と表示される。

正しい。

Nに「B」が入力されると、Select CaseステートメントはCase "B", "C"の条件を満たし、その下のMsgBoxの処理が実行されます。

3.コードは正常に実行され、メッセージボックスに「その他の成績です。」と表示される。

誤り。

Nに「B」が入力された場合、いずれかのCase条件が満たされるため、Case Elseの処理は実行されません。

4.コンパイルエラーが発生する。

誤り。

示されたコードはVBAの構文規則に則っており、コンパイルエラーは発生しません。