【ランダム順出題】Excel VBA スタンダード 模擬試験 問題バンクから40問出題 Excel VBA スタンダード 模擬問題 模擬試験 2025.09.292026.01.10 【試験の形式について】 この試験は、多数の問題の中から毎回自動でランダムに出題される形式をとっています。そのため、問題の出題順や選択肢の並び順は、受験のたびにシャッフルされます。 準備が整い次第、ボタンを押して試験を開始してください。 1. __________,__________ 次のコードは実行すると「Banana」と表示するマクロである。 以下の空欄に入る適切な語句を入力しなさい。 Sub Exam1() Dim A As Range Set A = Range("A2:A10").Find(What:=" ", Lookat:= xlWhole) MsgBox A.Offset(0, 1) End Sub 2. __________,__________ 以下のコードを実行後、表示される値はである。 空欄に入る値を答えなさい。 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 3. __________,__________ 指定したデータが「数値」として認識できるかどうかを判定するコードである。空欄に入る語句を解答しなさい。Dim result As result = IsNumeric("123") 4. __________,__________ 次のコードは、表の3列目を「500以上」の値で絞り込むマクロである。 絞り込み条件(抽出条件)を指定する引数名として正しいものを解答しなさい。 Sub Exam1() Range("A1").AutoFilter Field:=3, ">=500"End Sub 5. __________,__________ 次のコードは、条件を満たした際に処理を実行する条件分岐のマクロである。 D列に入力された値の合計値は である。 Sub Exam1() Dim i As Long For i = 2 To 11 If Cells(i , 1) = “2” Then If Cells(i , 2) = “Boxing” Then Cells (i, 4) = Cells(i, 3) * 2 End If If Cells(i , 1) = “3” Then If Cells(i , 2) = “Rugby” Then Cells (i, 4) = Cells(i, 3) * 3 End If Next i End Sub 6. __________,__________ 次のコードは、指定された範囲内の"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 7. __________,__________ 次のコードは、テーブルの集計行をコピーするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range("table1 ").Copy Range("E5") End Sub 8. __________,__________ 次のコードは、A列の値をカンマで区切り、B列に代入するマクロである。 セルB6に入力された値はどれか選択肢より適切なものを解答しなさい。 Sub Exam1() Dim i As Long, A As Variant, C As Variant For i = 2 To 11 A = Split(Cells(i, 1), ”,”) For Each C In A If IsNumeric(C) = True Then Cells(i, 2) = C End If Next C Next iEnd Sub 789 Japan BJapan789 B None 9. __________,__________ 次のコードは、セルの値が日付かどうかを判定し、日付であれば"True"、日付でなければ"False"をメッセージボックスに表示するマクロです。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim i As Variant i = Range(“A1”).Value If (i) Then MsgBox “True” Else MsgBox “False” End If End Sub 10. __________,__________ 次のコードは宣言時には、配列の要素数の上限数が不明であり、指定の値を区切り文字で区切り配列に格納するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim B As Variant, i As Long B = (“Canada:France:Germany”, “:”) For i = 0 To (B) MsgBox B(i) Next i End Sub 11. __________,__________ 以下のコードはフィルターで絞り込み後、テーブル内の見出し行ごとコピーし、 シート名「Sheet8」のセルC1に貼り付けるマクロである。 以下の空欄に入る適切な語句を解答しなさい。 Sub Exam1() With Range("A1").ListObject. .AutoFilter 3, "700" .Copy Sheets("Sheet8").Range("C1") End With End Sub 12. __________,__________ 次のコードは、セルA1を含む表を指定条件で絞り込むマクロである。 絞込み後4列目にREDと入力された同じ行の1列目「Data1」の合計値は である。 上記空欄に入る適切な値を解答しなさい。 Sub Exam1() Range("A1").AutoFilter 2, "Apple" Range (Range ("D2"), Cells (Rows.Count, 4).End(xlUp)) = "RED" End Sub 13. __________,__________ 並べ替えを実行する際、の説明として以下の空入る正しいものを解答しなさい。・タイトル行(ヘッダー)があるかどうかをExcelに自動判別させる設定としてを引数として指定する。なお数値で指定する場合はを指定する。 14. __________,__________ VBAコードにおける「引数(ひきすう)」の説明として、最も適切なものを選択肢の中から1つ選びなさい。 プロシージャを呼び出す際に、計算や処理の元となる値を渡す仕組みのことである。 マクロの実行を途中で強制的に終了させるための命令のことである。 マクロの最小実行単位のことである。 1つの変数の中に、複数の値を同時に格納できる変数のことである。 None 15. __________,__________ 次のコードは、2列目の各セルに入力されている半角文字を全角文字に変換するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim i As Long For i = 2 To 11 Cells(i, 2).Value = (Cells(i, 2).Value, ) Next i End Sub 16. __________,__________ 次のコードにおいて、変数を宣言した直後の変数Aに格納されている「初期値」として正しいものを選択しなさい。 Dim A As Long A = A + 1 空欄("") 0 Null 1 None 17. __________,__________ VBAの TypeName 関数に関する説明として、最も適切なものを選択肢の中から1つ選びなさい。 変数名が文法的に正しいかどうかのみを調べることができる。 セルに入力されている値だけでなく、変数に格納されている値のデータ型も調べることができる。 数に格納されている値のデータ型のみを調べることができる。 セルに入力されている値のデータ型のみを調べることができる。 None 18. __________,__________ 以下のコードは、テーブル内の"Data2"列のデータ部分を選択するマクロである。 空欄に入る適切な語句を入力しなさい。 Sub Exam1() Range("table1 ").Select End Sub 19. __________,__________ 以下のコード「Exam1」と「Exam2」は同じ結果になる場合があるマクロである。 以下の空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim i As Long, A As Long i = 1 Do Cells(i, 1) <> 0 A = A + Cells(i, 1) * 3 i = i + 1 Loop MsgBox A End Sub ーーーーーーーーーーーーーーーーー Sub Exam2() Dim i As Long, A As Long i = 1 Do Until Cells(i, 1) = 0 A = A + Cells(i, 1) * 3 i = i + 1 Loop MsgBox A End Sub 20. __________,__________ 次のコードは、セルA1を含む表を指定条件で絞り込み、4列目にREDと入力するマクロである。 なお、セル範囲を特定する際にEndモードを使用しているがシートの上から下に向かって進んでセル範囲を特定している。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range("A1").AutoFilter 2, "Tomato" Range (Range ("D2"), Cells (2, 4).End()) = "RED" End Sub 21. __________,__________ 次のコードは、Cドライブ下のDocumentsフォルダ内で、ファイル名"total2023.xlsx "を"backup2023.xlsx"と名前を変えてファイルをコピーするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() FileCopy "C:\Documents¥total2023.xlsx" "C:\Documents¥backup2023.xlsx" End Sub 22. __________,__________ 次のコードは、整数を引数として受け取り、その値が10より大きいかどうかを判定し、 値が10以下の場合、処理を途中で終了し、値が10より大きい場合は “10を超えています” というメッセージを表示するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim result As String Dim N As Integer N = 15 result = CheckNumber(N) MsgBox result End Sub Function CheckNumber(N As Integer) As String If N <= 10 Then Exit End If CheckNumber = “10を超えています” End Function 23. __________,__________ 次のコードは、セル範囲A1:D10の先頭行をタイトル行として、 D列を基準として降順に並べ替えるマクロである。 以下の空欄に入る適切な語句を解答しなさい。 Sub Exam1() With Sheets(“Sheets1”).Sort .SortFields.Clear .SortFields.Add Key:=Range(“D2”), Order:=xlDescending .SetRange Range(“A1:D10”) .Header = xlYes . End With End Sub 24. __________,__________ 次のコードは、Cドライブ下Documentsフォルダ内で、 ファイル名"total2023.xlsx"を"backup2023.xlsx"と名前を変えてファイルをコピーするマクロである。 以下の説明の空欄に入る適切な選択肢を解答しなさい。 Sub Exam1() FileCopy "C:\Documents\total2023.xlsx", "C:\Documents\backup\backup2023.xlsx" End Sub ・コピー先のフォルダにすでに同じ名前のファイルがある場合、上書きするかの確認メッセージは表示【 ① 】 ・コピー先に存在しないフォルダを指定するとエラーメッセージは表示【 ② 】 【 ① 】されない。【 ② 】される。 【 ① 】される。【 ② 】される。 【 ① 】されない。【 ② 】されない。 【 ① 】される。【 ② 】されない。 None 25. __________,__________ 以下のコードは、2列目で「Japan」を検索し、見つかったときは見つかったセルの3列目に「ASIA」を代入し、見つからなかったときは「0」と表示するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim A As Range Set A = Range(“B:B”).Find(What:=“Japan”) If A Is Then MsgBox “0” Else A.Offset(0, 1) = “ASIA” End If End Sub 26. __________,__________ 以下の文章は、イミディエイトウィンドウに関する説明です。 空欄に入る適切な語句を解答しなさい。 ・イミディエイトウィンドウでシート名「Sheets(1)」を削除する命令「Delete」を実行する場合、次のように入力します。 例) ① .delete 27. __________,__________ 次のコードはセルを検索し見つかった場合は、セルのアドレスを表示するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim N As Range Set N = Range(“A2:B11”).Find(What:=“Baseball”, Lookat:=xlWhole) If N Is Then MsgBox N.Address End If End Sub 28. __________,__________ 次のコードは、実行したときにメッセージボックスに表示される値は である。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim A(3) As Long, N As Variant, i As String A(0) = 3 A(1) = 5 A(2) = 11 A(3) = 9 For Each N In A i = i & N Next N MsgBox i End Sub 29. __________,__________ 次のコードは、表のセル範囲を一行目は見出し行とし、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 30. __________,__________ 次のコードは、For…Nextステートメントを用いて、1列目の値が”Boxing” か”Swimming”のときは2列目に”〇”を代入し、 それ以外の時は2列目に”Ballgame”を代入するマクロである。 空欄に入る適切な語句を入力しなさい。 Sub Exam1() Dim i As Long For i = 2 To 11 Select Case Cells(i, 1) Case “Boxing” “Swimming” Cells(i, 2) = “〇” Case Cells(i, 2) = “Ballgame” End Select Next i End Sub 31. __________,__________ 以下の語群はオートフィルターの解除や、フィルターボタンについて説明したものである。 説明として正しいA、B群の組み合わせを選択肢から②とAの他に1つ解答しなさい。 A群 ⓵オートフィルターを解除したい。 ②オートフィルターボタンは残してフィルターを解除したい。 B群 A.セル.AutoFilter 列番号 B.セル.AutoFilter ⓵とB ②とB ⓵とA None 32. __________,__________ 以下のコードは、ユーザーが指定した語句の順番に並び替えるマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() With Sheets("Sheet1"). Sort .SortFields. Clear .SortFields.Add Key:=Range("B2"), CustomOrder:="Golf Basketball 「空欄と同じ」Tennis" .SetRange Range("A1").CurrentRegion .Header = xlYes .Apply End With End Sub 33. __________,__________ 次のコードは、指定したセル範囲に入力されている数値を合計し、 その合計値を別のセルに入力するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range("B20") = . (Range("B1:B19")) End Sub 34. __________,__________ 次のコードは日本語のふりがなを設定し、そのふりがなを使って並べ替えるマクロである。 コード空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range("C2").Phonetic.Text = "ニッタ" Range("C3").Phonetic.Text = "シンデン" Range("C4").Phonetic.Text = "アラタ" Range("A1").Sort Key1:=Range("C1"), Order1:=xlAscending, :=xlPinYin, Header:=xlYes End Sub 35. __________,__________ 以下の選択肢はデバッグモードに関する説明である。 誤っているものを、選択肢の中から1つ解答しなさい。 デバッグモードになると、実行後の行が黄色くハイライトとなる、マクロが一時停止状態になる。 エラーが発生してもデバッグを行わないときはエラーのダイアログボックスの終了ボタンをクリックする。 デバッグモードの目的はミスの修正を行うことである。 エラー発生後デバッグモードに移行するかどうかは、エラーのダイアログボックスでユーザーが選択できる。 None 36. __________,__________ 日本語のデータを「ふりがな」を使って並べ替える際に使用する引数は に定数を指定する。 37. __________,__________ 次のコードは、表の指定範囲を2列目を基準に上下に並び変えるマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() With Sheets(“Sheet2”).Sort .SortFields.Clear .SortFields.Add2 Key:=Range(“B2”), Order:=xlDescending .SetRange Range(“A1:C11”) .Header = xlYes .MatchCase = False . = xlTopToBottom .Apply End With End Sub 38. __________,__________ 次のコードは、セルA1を含む表に対して、2列目を基準にオートフィルターを設定するマクロである。空欄 に入る適切な引数名を解答しなさい。Sub Exam1() Range("A1").AutoFilter := , Criteria1:="White"End Sub 39. __________,__________ 以下のコードは、エラーが発生したら処理をError1:へジャンプさせるマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() On Error1 Dim wb As Workbook Set wb = Workbooks.Open(“C:\path\file.xlsx”) wb.Sheets(“Sheet1”).Range(“A1”) = “No Err” MsgBox “OK” Exit Sub Error1: MsgBox "NG" End Sub 40. __________,__________ 以下のコードを実行したとき、メッセージボックスに表示される値はである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() With Sheets(“Sheet1”). Sort .SortFields. Clear .SortFields.Add Key:=Range(“D2”), CustomOrder:=“ASIA,EU,NorthAmerica,Other” .SortFields.Add Key:=Range(“C2”), Order:=xlDescending .SetRange Range(“A1:D10”) .Header = xlYes .Apply End With MsgBox Range(“C3”).Value End Sub