【ランダム順出題】Excel VBA スタンダード 模擬試験 ⑥ Excel VBA スタンダード 模擬問題 模擬試験 2025.10.11 【ランダム順出題】Excel VBA スタンダード 模擬試験 ⑥ 1. __________,__________ 次のコードは、2列目の値が1000より大きいときは3列目に”High”を入力し、 700より小さいときは3列目に”Low”を入力し、それ以外のときは”Medium”を入力するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim i As Long For i = 2 To 11 Select Case Cells(i, 2) Case Is > 1000 Cells(i, 3) = “High” Case Is < 700 Cells(i, 3) = “Low” Case Cells(i, 3) = “Medium” End Select Next i End Sub 2. __________,__________ 次のコードはセルを検索し見つかった場合は、セルのアドレスを表示するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim N As Range Set N = Range(“A2:B11”).Find(What:=“Baseball”, Lookat:=xlWhole) If Not N Is Then MsgBox N.Address End If End Sub 3. __________,__________ 次のコードは、指定されたセル範囲の中から空欄をチェックし、最初に見つかった空欄セルの位置をメッセージボックスで表示するマクロです。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim cell As Range For Each cell In Range("A1:A10") If cell.Value = "" Then MsgBox cell. Exit Sub End If Next cell End Sub 4. __________,__________ 次のコードは、2列目の値が600から750のときは3列目に”Medium”を代入し、1000または1100の値の時は3列目に”High”を代入するマクロである。 以下の空欄に入る適切な語句を入力しなさい。 Sub Exam1() Dim i As Long For i = 2 To 11 Select Case Cells(i, 2) Case 600 To 750 Cells(i, 3) = “Medium” Case 1000 1100 Cells(i, 3) = “High” End Select Next i End Sub 5. __________,__________ 次のコードは、エラーが発生してもエラーを無視して処理を続行し、 結果に応じたメッセージを表示するマクロです。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() On Error Resume Application.Workbooks.Add.SaveAs “total1.xlsx” If ActiveWorkbook. Saved = True Then MsgBox “Changed” Else MsgBox “No Changed” End IfEnd Sub 6. __________,__________ 以下のコードはRangeと構造化参照で列を指定して、指定列の右側に列を挿入し、 挿入列の各セルに数式を代入するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range("table1[[#Data], [Data2]]").Offset(0, 1).Formula = "= *1.5" End Sub 7. __________,__________ 次のコードは、"C:\Local\total.xlsx"のブックを開いた後、 "C:\Backup\total_backup.xlsx"へ場所やファイル名かえてブックを保存するマクロである。 以下の空欄に入る適切な語句を解答しなさい。 Sub Exam1() Workbooks.Open "C:\Local\total.xlsx" ActiveWorkbook. "C:\Backup\total_backup.xlsx" ActiveWorkbook.Close End Sub 8. __________,__________ 次のコードを実行したとき、メッセージボックスに表示される値として正しいものを解答しなさい。Sub Exam1() Dim A As Integer A = 5 Call SubProc(A)MsgBox AEnd SubSub SubProc(X As Integer) X = X * 3End Sub 15 コンパイルエラーが発生する。 0 5 None 9. __________,__________ VBAの基本的な構成要素に関する説明として、最も適切なものを以下の選択肢より1つ選択しなさい。 VBAではFunctionプロシージャのみがマクロとして実行できる。 プロシージャとはマクロの最小実行単位である。 VBAのコードが記述されたモジュールが、マクロの最小実行単位となる。 VBAのコードはステートメントの集まりであり、ステートメントがマクロの最小実行単位となる。 None 10. __________,__________ 次のコードは2列目から5列目まで、各列ごとの数値を合計し、その値を合計行に入力するマクロである。 以下の空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim total As Long Dim i As Long, j As Long For j = 2 To 5 total = 0 For i = 2 To 8 total = total + Cells Next i Cells(9, j) = total Next j End Sub 11. __________,__________ 次のコードは、テーブル内のセルからテーブルの見出し行を特定しコピーをするマクロである。 以下の空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range(”A1”).ListObject. .Copy Sheets("Sheet1").Range("B1") End Sub 12. __________,__________ 以下のコードは、表の指定範囲の2列目を降順で並び替えるマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() With Sheets(“Sheet2”).Sort .SortFields.Clear .SortFields.Add2 Key:=Range(“B2”), Order:=xlDescending .SetRange Range(“A1:D10”) .Header = xlYes .MatchCase = False .Orientation = xlTopToBottom . End With End Sub 13. __________,__________ 次のコードは、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 14. __________,__________ 次のコードは、漢字が入力されているC列各セルに対して、 ふりがなが設定されていればそのふりがなを、 ふりがなの設定がなく漢字がそのまま入力されている時 は"0"と、D列の各セルに入力するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim i As Long For i = 2 To 10 If Cells(i, 3).Phonetic . = "" Then Cells(i, 4) = "0" Else Cells(i, 4) = Cells(i, 3).Phonetic.「上記空欄と同じ」 End If Next i End Sub 15. __________,__________ 次のコードは、配列を使用してメッセージボックスに"Canada_France_Germany"と表示するマクロである。 以下の空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim regions(3) As String regions(0) = "Canada" regions(1) = "France" regions(2) = "Germany" regions(3) = "Italy" MsgBox regions(0) & " _ " & regions(1) & " _ " & regions End Sub 16. __________,__________ 次のコードは、対象のセル範囲に負の数があれば、メッセージボックスに”-”と表示後、繰り返し処理を終了し、”0”が見つかった場合にはメッセージを表示後、プロシージャを終了するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim cell As Range Dim sourceRange As Range Set sourceRange = Worksheets(“Sheet1”).Range(“A1:A10”) For Each cell In sourceRange If cell.Value < 0 Then MsgBox “-” Exit For ElseIf cell.Value = 0 Then MsgBox “0” Exit End If Next cell End Sub 17. __________,__________ 次のコードは宣言時には、配列の要素数の上限数が不明であり、指定の値を区切り文字で区切り配列に格納するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim B As Variant, i As Long B = Split (“Canada:France:Germany”, “:”) For i = 0 To (B) MsgBox B(i) Next i End Sub 18. __________,__________ 以下のコードは、エラーが発生したら処理をError1:へジャンプさせ、エラーの内容をイミディエイトウィンドウに表示するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() On Error Goto ErrorHandler Dim ws As Worksheet Set ws = Worksheets("Sheet") ws.Range("A1") = Cells(1, 1).Value Exit Sub ErrorHandler: Debug.Print "Error" & Err . End Sub 19. __________,__________ 次のコードは、A列に入力されている値から、当月の月末日を表示するマクロである。空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim endOfMonth As Date eendOfMonth = WorksheetFunction.EoMonth( (Range(“A1”).Value, Range(“A2”).Value, Range(“A3”).Value), 0) MsgBox “月末の日付は” & endOfMonth End Sub 20. __________,__________ 次のコードは、数値を4桁の文字列にし更に”SXXXX”の形式に整えるコードである。 なお各桁に値がない時も”0”を表示するように設定をした。 コードの空欄に入る適切な語句を入力しなさい。 Sub Exam1() Dim i As Long For i = 2 to 5 Cells(i, 2) = "S" & Format(i, "") Next i MsgBox Range(”B4”) End Sub 21. __________,__________ 次のコードは、テーブル内のセルよりテーブル全体を特定し、コピーを実行するマクロである。 以下の空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range(”A1”). Range(”A1”).ListObject.. .Copy Sheets(”Sheet7”).Range(”B1”) End Sub 22. __________,__________ 次のコードは、A列に入力されているコードをカンマで区切り、数値のみをB列に代入するマクロである。 空欄に入る適切な語句を入力しなさい。 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 If IsNumeric(C) = True Then Cells(i, 2) = C End If Next C Next iEnd Sub 23. __________,__________ 次のコードは、2列目に入力されている日付から、前月の月末日を3列目に代入するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim i As Long For i = 2 To 6 Cells(i, 3) = WorksheetFunction.EoMonth (Cells(i, 2), ) Next i End Sub 24. __________,__________ 次のコードは、1番目、2番目の並べ替え基準を指定し並び替えを実行するマクロである。 空欄に入る適切な語句を答えなさい。 Sub Exam1() Range("A1:C11").Sort Key1:=Range("B1"), Order1:=xlDescending, Key2:=Range("C1"), :=xlAscending, Header:=xlYes MsgBox Range("C3").Value End Sub 25. __________,__________ 次のコードは、宣言時には要素数を指定せず、途中で要素数を4に指定したマクロである。 以下の空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim countries() As String countries(4) countries(0) = “Canada” countries(1) = “France” countries(2) = “Germany” countries(3) = “Italy” countries(4) = “Japan” MsgBox countries(3) End Sub 26. __________,__________ 次のコードは、指定のセル範囲内で「Banana」という値を検索し、そのセルをコピーしてセルの背景を黄色にするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim N As Range Set N = Range(“B2:B10”).Find ( :="Banana", Lookat:=xlWhole) If Not N Is Nothing Then N.Copy Range("C2") Range("C2").Interior.Color = vbYellow End If End Sub 27. __________,__________ 次の文章は、デバッグ作業で使うイミディエイトウィンドウの説明と出力コードです。 空欄に入る適切な語句を解答しなさい。 次のコードは実行すると、イミディエイトウィンドウに「12345」を出力します。 Sub Exam1() Debug . 12345 End Sub 28. __________,__________ 次のコードは、D列を基準に降順でデータを並べ替えるマクロである。 以下の空欄に入る適切な語句を解答しなさい。 Sub Exam1() With Sheets("Sheet2").Sort .① .Clear .①「上記空欄と同じ」.Add2 Key:=Range("D2"), _ SortOn:=xlSortOnValues, _ Order:=xlDescending, _ DataOption:=xlSortNormal .SetRange Range("A1:D9") .Header = xlYes .Apply End With End Sub 29. __________,__________ 以下のコードは、エラーが発生したら処理をError1:へジャンプさせるマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() On Error 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 30. __________,__________ 以下のコードは、表の3列目に入力されている値を降順に並べ替えるマクロである。 空欄に入る適切な語句を答えなさい。 Sub Exam1() Range("A1").Sort Key1:=Range("D1"), :=xlDescending, header:=xlYes End Sub 31. __________,__________ 次のコードは、テーブル内の見出しを含む3列目を指定するマクロである。 以下の空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range("table1[[#All],[ ]]").Select End Sub 32. __________,__________ 次の文章はデバッグ作業の内 、マク口のコードを1行ずつ止めながら実行する説明である。 空欄に入る適切な語句を解答しなさい。 ・VBE内のマク口のコードを1行ずつ止めながら実行するのがステップインです。 ・ステップインの操作をコードの最初から行うには、実行したいプロシージャの中にカーソルを置き、 キーを押します。 ・実行すると、プロシージャのカーソル置いた箇所が黄色くハイライトされます。 これ以降、「上記空欄と同じ」 キーを押すたびに、 1行ずつマクロが実行されます。 33. __________,__________ 次コードは実行すると "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 N In i = i & N Next N MsgBox i End Sub 34. __________,__________ 次のコードは、2列目の各セルに入力されている半角文字を全角文字に変換するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim i As Long For i = 2 To 11 Cells(i, 2).Value = StrConv (Cells(i, 2).Value, ) Next i End Sub 35. __________,__________ 次のコードは、アクティブブックを"Documents"フォルダ内に「total_7.xlsx」として保存するマクロである。 なおブック名の「7」は、7月現在の月を表示したものである。 以下の空欄に入る適切な解答を記入しなさい。 Sub Exam1() ActiveWorkbook.SaveAs "C:\Documents¥" & "total_" & Month() & ".xlsm" End Sub 36. __________,__________ 次のコードは、セルA1を含む表に対して3列目が"100以上かつ、300以下"の条件で絞り込むマクロである。空欄に入る語句を解答しなさい。 Sub Exam1() Range("A1").autofilter 3, ">=100", , "<=300" End Sub 37. __________,__________ 次のコードはテーブル全体をコピーするマクロである。 空欄に入る適切な語句を解答しなさい。なおテーブルの名前は「table1」である。 Sub Exam1() With Range("table1 ") .Copy Sheets("Sheet12").Range("B2") End With End Sub 38. __________,__________ 次のコードは表内を、セルF1に入力された文字列でC列の上からの位置を探し、 見つけた上からの位置を参照して、B列の値をセルG1に入力するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim N As Long With WorksheetFunction N = .Match(Range(“F1”), Range(“C2:C10”), 0) Range("G1") = .(Range("B2:B10"), N) End With End Sub 39. __________,__________ 次のコードは、エラーが発生した際に、エラー番号に応じて適切なメッセージを表示するマクロである。 以下の空欄に入る適切な語句を解答しなさい。 Sub Exam1() On Error Goto ErrorHandler ThisWorkbook.Sheets(“Sheet”).Range(“A1”) = ActiveSheet.Range(“B1”) Exit SubErrorHandler: Select Case Err. Case 9 MsgBox “指定されたシートが見つかりません。” Case Else MsgBox “予期しないエラーが発生しました。” End Select End Sub 40. __________,__________ 次のコードは、コードの途中で配列の要素数を増やし、その後メッセージボックスに"Germany"と表示するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim Countries() As String ReDim Countries(2) Countries(0) = "Canada" Countries(1) = "France" Countries(2) = "Germany" ReDim Countries(4) Countries(3) = "Italy" Countries(4) = "Japan" MsgBox Countries(2) End Sub