Excel VBA スタンダード 模擬問題 模擬試験 ハト 2025年8月31日 【ランダム順出題】Excel VBA スタンダード 模擬試験 ⑤ 1. スタンダード 2章,Excel スタンダード 次のコードは配列に格納した値をメッセージで表示するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim B As Variant Dim i As Long B = Split(“baseball:football:basketball“, ” “) For i = LBound(B) To UBound(B) MsgBox B(i) Next i End Sub 2. スタンダード 9章,Excel スタンダード 次のコードは、 セル範囲A2:A10に入力されている文字列データから 「- 」を除去した結果を2列目に入力するマクロである。 ”” (空欄文字列なし)を入れる位置は【 ① 】と【 ② 】どこが適切か選択肢から解答しなさい。 Sub Exam1() Dim i As Long For i = 2 To 10 Cells(i, 2) = Replace(Cells(i, 1), 【 ① 】 , 【 ② 】) Next i End Sub 【 ① 】 【 ② 】 【 ① 】と【 ② 】 【 ① 】と【 ② 】どちらもあてはまらない。 None 3. スタンダード 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 4. スタンダード 1章,Excel スタンダード プロシージャの引数に関する説明として間違っているものを、次の中から1つ解答しなさい。 プロシージャが引数を複数受け取る際は、引数を(,)カンマで区切って記述をする。 呼び出し元のプロシージャが引数を指定していない時や、引き渡す引数の数に違いがあってもエラーにはならない。 引数を引き受けるプロシージャはプロシージャ名の後に受け取る引数の名前を、括弧で囲い記述する。 引数はどんな種類の値で受け取るかという型を指定することができる。 None 5. スタンダード 8章,Excel スタンダード 次のコードはテーブルをオートフィルターで絞り込み、テーブル内の列を複数コピーするマクロである。 実行後メッセージに表示された数値は である。 Sub Exam1() With Range(“A1”).ListObject .Range.AutoFilter 2, “Tennis” .ListColumns(1).Range.Copy Sheets(“Sheet2”).Range(“A1”) .ListColumns(3).Range.Copy Sheets(“Sheet2”).Range(“B1”) End With MsgBox Sheets(“Sheet2”).Range(“A3”) * Sheets(“Sheet2”).Range(“B3”) End Sub 6. スタンダード 5章,Excel スタンダード 次のコードは、A列から “Baseball” という値を探し、その値の位置に対応する B 列の値をメッセージボックスで表示するマクロである。 以下の空欄に入る適切な語句を選択しなさい。 Sub Exam1() Dim searchValue As String Dim result As Variant searchValue = “Baseball” result = WorksheetFunction.Match(searchValue, Range(“A2:A11”), 0) If IsNumeric(result) Then MsgBox searchValue & “ は “ & result & “ 行目にあり、対応する値は “ & WorksheetFunction.(Range(“B2:B11”), result) & “ です。” Else MsgBox searchValue & “ は見つかりませんでした。” End If End Sub 7. スタンダード 7章,Excel スタンダード 次のコードは並べ替える時に、数値とテキストを別々に扱うマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() With Sheets(“Sheet2”).Sort .SortFields.Clear .SortFields.Add2 Key:=Range(“C2”), SortOn:=xlSortOnValues, Order:=xlAscending, :=xlSortNormal .SetRange Range(“A1:D11”) .Header = xlYes .Apply End With End Sub 8. スタンダード 10章,Excel スタンダード 次のコードは、2列目の1行目から15行目に「5」を入力する時に、2列目のセルが空欄の場合には処理を一時停止するマクロである。 空欄に入る適切な語句を答えなさい。 Sub Exam1() Dim i As Long, valueToInsert As Long valueToInsert = 5 For i = 1 To 15 If Cells(i, 2) = “” Then Else Cells(i, 2).Value = valueToInsert End If Next i End Sub 9. スタンダード 4章,Excel スタンダード 次のコードは、Cドライブ下のDocumentsフォルダ内で、ファイル名”total2023.xlsx “を”backup2023.xlsx”と名前を変えてファイルをコピーするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() FileCopy “C:\Documents¥total2023.xlsx” “C:\Documents¥backup2023.xlsx” End Sub 10. スタンダード 3章,Excel スタンダード 次のコードは、全ての開いているブックの中に”VBA”という名前のシートがあるか確認するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim wb As Workbook Dim ws As Worksheet For Each wb In For Each ws In wb.Sheets If ws.Name = “VBA” Then MsgBox “OK” Exit Sub End If Next ws Next wb MsgBox “Nothing” End Sub 11. スタンダード 8章,Excel スタンダード 次のコードは、2列目が”Germany”であるデータを、見出し行も含め全てSheet5のセルB1へコピーするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() With Range(“A1”)..Range .AutoFilter 2, “Germany” .Copy Sheets(“Sheet6”).Range(“B1”) .AutoFilter 2 End With End Sub 12. スタンダード 6章,Excel スタンダード 次のコードは、セルA1を含む表を2列目が “Potato”と等しい条件で絞り込み、 絞り込んだ結果の値の合計をメッセージボックスに表示するマクロである。 空欄に入る適切な引数を解答しなさい。 Sub Exam1() Range(“A1”).AutoFilter 2, “Potato” MsgBox WorksheetFunction.Subtotal(, Range(“A:A”)) End Sub 13. スタンダード 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 14. スタンダード 4章,Excel スタンダード 次のコードは、ブックにNOW関数を利用し今日の日付と時刻で 「2023_06_22_1430.xlsm」のような形式のファイル名で保存するマクロである。 空欄に入る適切な語句を入力しなさい。 Sub Exam1() ThisWorkbook.SaveAs “C:\Backup\” & (Now, ““) & “.xlsm” End Sub 15. スタンダード 1章,Excel スタンダード 次のコードは別のプロシージャへ引数を引き渡すマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Call Exam2(“baseball”) End Sub Sub Exam2(N As ) MsgBox N End Sub 16. スタンダード 7章,Excel スタンダード 次のコードは、1番目、2番目の並べ替え基準を指定し並び替えを実行するマクロである。 空欄に入る適切な語句を答えなさい。 Sub Exam1() Range(“A1:C11”).Sort Key1:=Range(“B1”), Order1:=xlDescending, :=Range(“C1”), :=xlAscending, Header:=xlYes MsgBox Range(“C3”).Value End Sub 17. スタンダード 9章,Excel スタンダード VBAの実行時エラーに関する説明として間違っているものを、次の選択肢の中から2つ解答しなさい。 実行時エラーは、コードの文法には誤りがなくても、実行中に発生するエラーである。 実行時エラーはコードの実行前に検出される。 実行時エラーは、ユーザーの入力やファイルの読み込みなど、実行時の状況によって発生することがある。 実行時エラーが発生しても、通常はVBAコードの実行が停止しない。 18. スタンダード 6章,Excel スタンダード 次のコードはオートフィルターをかけた後、見出し行を除いたデータ領域のみをコピーするマクロである。 空欄に入る適切な語句を入力しなさい。 Sub Exam1() Dim N As Range Range(”A1”).AutoFilter 2,”Potato” Set N = Range(“A1”).CurrentRegion.Offset N.Copy Range(“E2”) Range(“A1”).AutoFilter 2 End Sub 19. スタンダード 2章,Excel スタンダード 次のコードはB列が”Tomato”だった時の、C列の合計を表示するマクロである。 実行後、メッセージに表示された値は である。 空欄に入る適切な値を解答しなさい。 Sub Exam1() Dim i As Long, N As Long For i = 2 To 10 If Cells(i, 2) = “Tomato” Then N = N + Cells(i, 3) End If Next i MsgBox N End Sub 20. スタンダード 7章,Excel スタンダード 以下のコードは、ユーザーが指定した語句の順番に並び替えるマクロである。 空欄に入る適切な語句を解答しなさい。 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 21. スタンダード 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 22. スタンダード 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 23. スタンダード 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 24. スタンダード 8章,Excel スタンダード 次のコードは、テーブルの集計行をコピーするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range(“table1 “).Copy Range(“E5”) End Sub 25. スタンダード 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 26. スタンダード 8章,Excel スタンダード 次のコードは指定のセルを含むテーブルを絞り込み、テーブル内の2列目のみコピーするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() With Range(“A1”).ListObject .Range.AutoFilter 3, “800” . (2).Range.Copy Sheets(“Sheet10”).Range(“B2”) End With End Sub 27. スタンダード 3章,Excel スタンダード 次のコードは、2列目の値が1000より大きいときは3列目に”High”を入力し、 700より小さいときは3列目に”Low”を入力し、それ以外のときは”Medium”を入力するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim i As Long For i = 2 To 11 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 28. スタンダード 10章,Excel スタンダード 次のコードは、変数Bのデータの形式を判定してメッセージボックスに表示するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim B As Variant B = 123.45 If (B) = “Double” Then MsgBox “Bの型は「Double」です” Else MsgBox “Bの型は「Double」ではありません” End If End Sub 29. スタンダード 9章,Excel スタンダード 以下の文書は、マクロの論理エラーを発生するタイミングに応じて2つに分類したものです。 空欄に入る適切な語句を解答しなさい。 ・論理エラー ∟① エラー・・・ マクロが実行される際、VBEはコード全体を「Excel が理解できる形式」に変換します。 この変換は①「上記空欄と同じ」と呼ばれています。この時点で論理的な誤りが検出されると、実行前にエラーが発生します。 ∟②エラー・・・ 論理的な誤りが含まれていても、その部分が実際に実行されるまでエラーが発生しない場合があります。 30. スタンダード 1章,Excel スタンダード 以下のマクロを実行したところ、セルC1内に「150」と表示された。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range(“B1”) = 50 Exam2() End Sub Sub Exam2() Range(“C1”) = Range(“B1”) *3 End Sub 31. スタンダード 9章,Excel スタンダード 次のコードは、2列目の各セルに入力されている半角文字を全角文字に変換するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim i As Long For i = 2 To 11 Cells(i, 2).Value = (Cells(i, 2).Value, ) Next i End Sub 32. スタンダード 10章,Excel スタンダード 指定の値が日付と認識できるか確認したい。 このような場合に使用する最適な関数はどれか。 次の選択肢の中から1つ解答しなさい。 Day Date IsDate Dateserial None 33. スタンダード 6章,Excel スタンダード 次のコードは、セルA1を含む表を指定条件で絞り込み、4列目にREDと入力するマクロである。 なお、セル範囲を特定する際にEndモードを使用しているがシートの上から下に向かって進んでセル範囲を特定している。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Range(“A1”).AutoFilter 2, “Tomato” Range (Range (“D2”), Cells (2, 4).End()) = “RED” End Sub 34. スタンダード 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 35. スタンダード 6章,Excel スタンダード 次のコードは、指定のセル範囲内で「Banana」という値を検索し、そのセルをコピーしてセルの背景を黄色にするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim N As Range Set N = Range(“B2:B10”). ( :=”Banana”, Lookat:=xlWhole) If Not N Is Nothing Then N.Copy Range(“C2”) Range(“C2”).Interior.Color = vbYellow End If End Sub 36. スタンダード 2章,Excel スタンダード 以下のコードは配列を使用し、実行した結果メッセージに”Canada”が表示されるマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim countries( To 4) As String countries(0) = “Canada” countries(1) = “France” countries(2) = “Germany” countries(3) = “Italy” countries(4) = “Japan” MsgBox countries(「上記空欄と同じ」) End Sub 37. スタンダード 10章,Excel スタンダード 次の文章はイミディエイトウィンドウの操作についての説明です。 空欄に入る適切な語句を解答しなさい。 ・イミディエイトウィンドウは、マクロが停止しているデバッグモードや、 VBEのメニューから「イミディエイトウィンドウ」を表示することができます。 また変数の内容やプロパティ、実行中のマクロに関する情報を表示し、命令を実行するために使用します。 ・イミディエイトウィンドウの表示方法には、[表示]メニューから以外に、Ctrl + キーを押す方法もあります。 38. スタンダード 4章,Excel スタンダード 次のコードは、Cドライブ下のDocumentsフォルダ内で、ファイル名”total2023.xlsx “を “backup2023.xlsx”と名前を変えてファイルをコピーするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() “C:\Documents¥total2023.xlsx”,”C:\Documents¥backup2023.xlsx” End Sub 39. スタンダード 6章,Excel スタンダード 次のマクロは検索したセルの範囲を変換しコピーするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim A As Range Set A = Range(“A:A”).Find (What:=“7”) If A Is Nothing Then MsgBox “0” Else A. (1, 3). Copy Range(“E2”) End If End Sub 40. スタンダード 7章,Excel スタンダード 次のコードは日本語のふりがなを設定し、そのふりがなを使って並べ替えるマクロである。 コード空欄に入る適切な語句を解答しなさい。 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