Excel VBA スタンダード 模擬問題 模擬試験 200 ハト 2025年8月31日 【ランダム順出題】Excel VBA スタンダード 模擬試験 200 1. スタンダード 5章,Excel スタンダード 次のコードは、指定された範囲内の”Banana”の数をカウントし個数をメッセージボックスに表示するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim A As Long A = WorksheetFunction. (Range(“C1:C15”), “Banana”) If A = 0 Then MsgBox “0” Else MsgBox “Banana‐” & A End If End Sub 2. スタンダード 9章,Excel スタンダード 次のコードは、ブックの保存状態を調べ、調べた結果に応じたメッセージを表示するマクロです。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() ThisWorkbook.SaveAs “book.xlsm” If ThisWorkbook. = True Then MsgBox “Changed” Else MsgBox “No Changed” End If End Sub 3. スタンダード 2章,Excel スタンダード 次のコードは、動的配列を使用したマクロである。 実行後、メッセージに表示されたのは である。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim countries() As String ReDim countries(3) countries(0) = “Canada” countries(1) = “France” countries(2) = “Germany” countries(3) = “Italy” ReDim countries(4) countries(4) = “Japan” MsgBox countries(0) & countries(1) & countries(2) & countries(3) & countries(4) End Sub 4. スタンダード 9章,Excel スタンダード VBEのエラーに関する説明として間違っているものを、次の選択肢の中から1つ解答しなさい。 VBE内でEnterキーを押すと、コードに誤りがないかチェックをする。 記述エラーは、VBAの文法ではない記述をした時に命令すると発生するエラーである。 VBE内で記述に誤りがあると該当箇所が赤文字で表示される。 記述エラーは文法エラーとも呼ばれている。 None 5. スタンダード 7章,Excel スタンダード 以下のコードを実行後、表示される値はである。 空欄に入る値を答えなさい。 Sub Exam1() Range(“A1:C11”).Sort Key1:=Range(“B1”), Order1:=xlAscending, Key2:=Range(“C1”), Order2:=xlDescending, Header:=xlYes MsgBox Range(“C2”).Value + Range(“C7”).Value End Sub 6. スタンダード 10章,Excel スタンダード 以下の選択肢はブレークポイントに関する説明である。 誤っているものを、選択肢の中から1つ解答しなさい。 ブレークポイントを設定した行でマクロが一時停止する。 ブレークポイントは、1つのプロシージャ内に1箇所のみ設定することができる。 ブレークポイントを設定するショートカットキーは、一時停止したいコードの行カーソルを置き「F9」キー押下し設定する。 マクロ実行しブレークポイントで一時停止した時、ブレークポイントを設定した行のコードは未実行である。 None 7. スタンダード 8章,Excel スタンダード 次のコードは、テーブルの集計行をコピーするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range(“table1 “).Copy Range(“E5”) End Sub 8. スタンダード 3章,Excel スタンダード 次のコードは、指定されたセル範囲の中から空欄をチェックし、最初に見つかった空欄セルの位置をメッセージボックスで表示するマクロです。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim cell As Range For Each cell In (“A1:A10”) If cell.Value = “” Then MsgBox cell. Exit Sub End If Next cell End Sub 9. スタンダード 8章,Excel スタンダード 以下のコードは、セルA1を含む表データ部の1列目を”2″で絞り込み後行を削除しメッセージを表示するマクロである。 メッセージに表示された値は である。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() With Range(“A1”).ListObject.DataBodyRange .AutoFilter 1, “2” .EntireRow.Delete .AutoFilter 1 MsgBox .Rows.Count End With End Sub 10. スタンダード 8章,Excel スタンダード 次のコードは、テーブルの見出し行のみを指定のシートへコピーするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range(“table1 “).Copy Sheets(“Sheet1”).Range(“B2”) End Sub 11. スタンダード 9章,Excel スタンダード VBAのエラーに関する説明として間違っているものを、次の選択肢の中から1つ解答しなさい。 記述エラーは文法エラーとも呼ばれている。 マクロで発生するエラーは大きく分けると、記述エラーと論理エラーに分けられる。 論理エラーは分けるとコンパイルエラーと作業時エラーに分けられる。 論理エラーはVBAの文法的なエラーではないが、論理的な矛盾によって発生するエラーである。 None 12. スタンダード 1章,Excel スタンダード 以下の選択肢の中で引数を使わないで値を共有する方法の説明として間違っているものを、次の中から1つ解答しなさい。 モジュールレベル変数は、宣言すると別のモジュールでも値を共有することができる。 モジュールレベル変数は、宣言すると別のプロシージャでも値を共有することができる。 複数のプロシージャで値を共有するには、引数の使用やモジュールレベル変数を使用することである。 モジュールレベル変数の宣言は、宣言セクションで宣言する。 None 13. スタンダード 9章,Excel スタンダード 次のコードは、 セル範囲A2:A10に入力されている文字列から”-“を除去した結果を2列目に入力するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim i As Long For i = 2 To 10 Cells(i, 2) = (Cells(i, 1), “-“, “”) Next i End Sub 14. スタンダード 7章,Excel スタンダード 次のコードは、ユーザーが指定した語句の順番に基づいてデータを並べ替えるマクロである。 以下の空欄に入る適切な語句を解答しなさい。 Sub Exam1() With Sheets(“Sheet1”). Sort .SortFields. Clear .SortFields.Add Key:=Range(“B2”), :=”Golf,Basketball,Tennis” .SetRange Range(“A1”).CurrentRegion .Header = xlYes .Apply End With End Sub 15. スタンダード 3章,Excel スタンダード 以下のコードは、指定したセル範囲から値をひとつずつ取り出し、変数に格納するマクロである。 実行後メッセージに表示された値は である。 空欄に入る適切な値を解答しなさい。 Sub Exam1() Dim N As Range, A As Long For Each N In Range(“A1:A10”) A = A + N Next N MsgBox A End Sub 16. スタンダード 10章,Excel スタンダード 次の文章はデバッグ作業の内 、マク口のコードを1行ずつ止めながら実行する説明である。 空欄に入る適切な語句を解答しなさい。 ・VBE内のマク口のコードを1行ずつ止めながら実行するのが ① です。 ・①*上記空欄と同じの操作をコードの最初から行うには、実行したいプロシージャの中にカーソルを置き、② キーを押します。 ・実行すると、プロシージャのカーソル置いた箇所が黄色くハイライトされます。 これ以降、②*上記空欄と同じキーを押すたびに、 1行ずつマクロが実行されます。 17. スタンダード 2章,Excel スタンダード 次のマクロはオブジェクト変数を使用したマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim N As Set N = Range(“A1”) N.Resize(1, 2).Copy Range(“C1”) End Sub 18. スタンダード 1章,Excel スタンダード 次のコードは、引数を使わず変数Cを共有し初期値を設定するマクロである。 A ~ Dの内 で変数の宣言と初期化を行うのが適切である。半角大文字で解答しなさい。 変数の宣言と初期化: Dim C As Long Option Explicit 【 A 】 Sub Exam1() 【 B 】 C = 10 Call Exam2 End Sub Sub Exam2() 【 C 】 C = C + 5 Call Exam3() End Sub Sub Exam3 【 D 】 MsgBox “Cの値は“ & C End Sub 19. スタンダード 8章,Excel スタンダード 以下のコードはRangeと構造化参照で列を指定して、指定列の右側に列を挿入し、 挿入列の各セルに数式を代入するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range(“table1[[#Data], [Data2]]”). (0, 1).Formula = “= *1.5″ End Sub 20. スタンダード 5章,Excel スタンダード 以下のコードは、表の4列目を検索しセルの位置を特定しセルの値をセルG2へ入力するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range(“G1”) = WorksheetFunction.(Range(“F1”), Range(“A1:D10”), 4, False) End Sub 21. スタンダード 5章,Excel スタンダード 次のコードは、セル範囲B1からB10に入力された数値のうち、 大きい順から数えて2番目の値をセルD1に代入するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range(“D1”) = WorksheetFunction. (Range(“B1:B10”), 2) End Sub 22. スタンダード 10章,Excel スタンダード 次のコードを実行したとき表示されるメッセージはどれか。 正しいものを、選択肢の中から1つ解答しなさい。 Sub Exam1() MsgBox TypeName(”True”) End Sub String False True Boolean None 23. スタンダード 3章,Excel スタンダード 以下のコードは、1列目と2列目の値によって3列目に値を代入するマクロである。 このマクロの実行結果であるC列の合計行セルC12の値は であった。 Sub Exam1() Dim i As Long For i = 2 To 11 Select Case Cells(i, 1) Case “Japan” Select Case Cells(i, 2) Case “60” Cells(i, 3) = 900 Case “80” Cells(i, 3) = 1000 Case “100” Cells(i, 3) = 1100 End Select End Select Select Case Cells(i, 1) Case “United States” Select Case Cells(i, 2) Case “60” Cells(i, 3) = 1000 Case “80” Cells(i, 3) = 1100 Case “100” Cells(i, 3) = 1200 End Select End Select Next i End Sub 24. スタンダード 4章,Excel スタンダード 次のコードは、ブックにNOW関数を利用し今日の日付と時刻で 「2023_06_22_1430.xlsm」のような形式のファイル名で保存するマクロである。 空欄に入る適切な語句を入力しなさい。 Sub Exam1() ThisWorkbook.SaveAs “C:\Backup\” & (Now, ““) & “.xlsm” End Sub 25. スタンダード 1章,Excel スタンダード 次のコードは実行したとき、メッセージボックスに「40」と表示するマクロである。 空欄に入る適切な語句を解答しなさい。 なお空欄のままが解答のときは「空欄」と入力してください。 Sub Exam1() Dim B As Long B = 20 Call ModifyValue(B) MsgBox B End Sub Sub ModifyValue( B As Long) B = B * 2 End Sub 26. スタンダード 3章,Excel スタンダード 次コードは実行すると “1234” がメッセージボックスに表示されるマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim A(3) As Long, N As Variant, i As String A(0) = 1 A(1) = 2 A(2) = 3 A(3) = 4 For Each In i = i & N Next N MsgBox i End Sub 27. スタンダード 6章,Excel スタンダード 以下の語群はオートフィルターの解除や、フィルターボタンについて説明したものである。 説明として正しいA、B群の組み合わせを選択肢から2つ解答しなさい。 A群 ⓵オートフィルターを解除したい。 ②オートフィルターボタンは残してフィルターを解除したい。 B群 A.セル.AutoFilter 列番号 B.セル.AutoFilter ⓵とA ⓵とB ②とB ②とA 28. スタンダード 6章,Excel スタンダード 次のコードは、セルA1を含む表を2列目が”Apple”と等しい条件で絞り込み、 その結果が何件あるかをメッセージボックスに表示するマクロである。 マクロ実行後、表示された値は である。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range(“A1”).AutoFilter 2, “Apple” MsgBox WorksheetFunction.Subtotal(3, Range(“A:A”)) -1 End Sub 29. スタンダード 6章,Excel スタンダード 次のコードは、セルA1を含む表に対して3列目が「200以上かつ、400以下」の条件で絞り込むマクロである。 以下の空欄に入る数値を解答しなさい。 Sub Exam1() Range(“A1”).AutoFilter 3, “>=200”, , “<=400" End Sub 30. スタンダード 1章,Excel スタンダード 以下の文章はCallステートメントに関する説明である。 説明が間違っているものを、次の選択肢の中から1つ解答しなさい。 Callステートメントを使用すると、呼び出されたプロシージャは常に最後まで実行され、元のプロシージャに戻ることはできない。 別のプロシージャを呼び出し実行することができる。 別のプロシージャを呼び出すとき、”Call”の記述を省略し、プロシージャ名を記述すれば呼び出すことができる。 Callステートメントは呼び出した別のプロシージャに、計算や処理で使う引数を渡すことができる。 None 31. スタンダード 7章,Excel スタンダード 次のコードは表の4列目を基準に、1行目を見出し行と指定して並べ替えるマクロである。 実行の結果メッセージには が表示された。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() With ActiveSheet.Sort .SortFields.Clear .SortFields.Add Key:=Range(“D2”), Order:=xlDescending .SetRange Range(“A1:D10”) .Header = xlYes .Apply End With MsgBox Range(“A2”).Value End Sub 32. スタンダード 4章,Excel スタンダード 以下のコードはマクロが書かれているブック上のセルを値を取得し、ブックを一つずつ開き、 最後にアクティブ状態のブック名を表示するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim i As Long For i = 2 To 5 Workbooks.Open “C:\Data\” & .ActiveSheet.Cells(i, 1) & “.xlsx” Next i MsgBox ActiveWorkbook.Name End Sub 33. スタンダード 7章,Excel スタンダード 次のコードは、表のセル範囲を一行目は見出し行とし、2列目を基準に降順に並び替えるマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() With Sheets(“Sheet2”).Sort .SortFields.Clear .SortFields.Add2 Key:=Range(“B2”), Order:=xlDescending .SetRange Range(“A1:C11”) .Header = .MatchCase = False .Orientation = xlTopToBottom .Apply End With End Sub 34. スタンダード 2章,Excel スタンダード 以下のコードは、B列のセル内の文字列を結合し結果をメッセージボックスで表示するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim i As Long, N As String For i = 2 To 8 N = N %BLANK% Cells(i, 2) Next i MsgBox N End Sub And Plus & = None 35. スタンダード 6章,Excel スタンダード 以下のコードはオートフィルターで絞り込みをし、その後オートフィルターを解除するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range(“A1”).AutoFilter 2, “Japan” Range(Range(“D2”), Cells(Rows.count, 4).End(xlUp)) = “ASIA” Range(“A1”). End Sub 36. スタンダード 4章,Excel スタンダード 次のコードは、Cドライブ下の”Documents”フォルダ内に report.xlsxというファイルがあるか調べ、 ある場合はメッセージボックスにファイル名を表示するマクロである。 空欄に入る適切な語句を入力しなさい。 Sub Exam1() Dim A As String A = (“C:\Documents\report.xlsx”) If A ““ Then MsgBox “OK:” & A Else MsgBox “NG” End If End Sub 37. スタンダード 4章,Excel スタンダード 次のコードは、ブックを続けて開き、その後ブック名をメッセージで表示するマクロである。 以下の空欄に入る適切な語句を選択肢の中から解答しなさい。 ・マクロ実行後、最後にアクティブ状態となるブックは %BLANK% である。 Sub Exam1() Dim i As Long For i = 2 To 5 Workbooks.Open “C:\Data\“ & ThisWorkbook.ActiveSheet.Cells(i, 1) &“. xlsx“ Next i MsgBox ActiveWorkbook.Name End Sub 1.xlsx 3.xlsx total.xlsx 2.xlsx None 38. スタンダード 2章,Excel スタンダード 次のコードは配列に格納した値をメッセージで表示するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim B As Variant Dim i As Long B = Split(“baseball:football:basketball”, “:”) For i = (B) To UBound(B) MsgBox B(i) Next i End Sub 39. スタンダード 10章,Excel スタンダード 指定の値が日付と認識できるか確認したい。 このような場合に使用する最適な関数はどれか。 次の選択肢の中から1つ解答しなさい。 Day IsDate Dateserial Date None 40. スタンダード 5章,Excel スタンダード 次のコードは、A列に入力されている値から、当月の月末日を表示するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim endOfMonth As Date endOfMonth = WorksheetFunction. (DateSerial(Range(“A1”).Value, Range(“A2”).Value, Range(“A3”).Value), ) MsgBox “月末の日付は “ & endOfMonth End Sub