【ランダム順出題】Excel VBA ベーシック 模擬試験 ① ベータ版 Excel VBA ベーシック 模擬問題 模擬試験 2025.12.092025.12.18 制限時間は50分です。 問題の出題順や選択肢の並び順は、サイト側で自動でシャッフルされます。 準備が整い次第、ボタンを押して始めてください。 1. __________,__________ 以下のコードは、条件に合った時にはセル範囲をコピーするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() If Range(“A2”).Value =”January” Then Range(“A1”).CurrentRegion.Offset(1, 0).Resize(12).Copy Range(“F2”) End Sub 2. __________,__________ 次のコードはセル内のアルファベットを大文字にし、指定のセルに代入するマクロである。 空欄に入る適切な語句を選択肢から解答しなさい。 Sub Exam1() Range(“B2”).Value = 【 ① 】(Range(“A2”).Value) End Sub UCase LCase UpperCase LowerCase None 3. __________,__________ 以下のコードは、各列の数値の合計値を5行目のTotal行に代入するマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim A As Long, i As Long, j As Long For j = 2 To 5 A = 0 For i = 2 To 4 A = A + Next i Cells(5, j) = A Next j End Sub 4. __________,__________ 以下の選択肢の中で、キー操作で複数のシートを選択する操作として、正しいものを1つ解答しなさい。 :複数の連続しないシートの選択 :連続するシートの選択 複数のシートを選択するには、シート見出しを右クリックする。 複数の連続しないシートを選択するには、1つ選択状態のシートがある状態でCtrlキーを押しながらシート見出しをクリックする。 複数の連続するシートを選択するには、Altキーを押しながらシート見出しをクリックする。 複数のシートを選択するには、シート見出しをドラッグする。 None 5. __________,__________ セル内の値を表す記述として間違っているものを、選択肢から1つ解答しなさい。 Cells(1, 1).Text Range(“A1”) Range(“A1”).Value Cells(1, 1).Value None 6. __________,__________ 「=」など記号を使用した比較演算子が返す値に関する説明として、正しいものを一つ解答しなさい。 比較演算子は、2つの値を比較した結果が条件と同じときには、 Match を返します。 比較演算子は、2つの値を比較した結果が条件と同じときには、True を返します。 比較演算子は、2つの値を比較した結果が条件と同じときには、Like を返します。 比較演算子は、2つの値を比較した結果が条件と同じときには、= を返します。 None 7. __________,__________ 次のコードはパブリック定数Aとローカル定数Bに数値を定め、メッセージを表示するマクロである。空欄に入る適切な語句を解答しなさい。 Option Explicit Public A As Integer = 100 Sub Exam1() 「上記空欄と同じ」B As Integer = 300 MsgBox A+B End Sub 8. __________,__________ 次のコードはシートから別のシートへセルをコピーするマクロである。なおアクティブシートはシートの一番左端にある「sheet1」である。 このマクロの説明として、正しいものを選択肢の中から1つ解答しなさい。 Sub Exam1() Sheets(“sheet1”).Range(“A2”).Copy _ Sheets(“sheet3”).Range(“A2”).Offset(1) End Sub マクロ実行後、アクティブシートはシート名「sheet3」になる。 マクロ実行後、セルのコピーが実行されシート名「sheet2」のセル番号B2へコピーされる。 マクロ実行後、アクティブシートに変更はない。 ブックやシートを指定してもアクティブシート以外のセルにコピーはできない。 None 9. __________,__________ VBEのコメントの書式設定について、次のうち誤っているものを選択肢より1つ解答しなさい。 コメントのフォント名は変更できる。 コメントのフォントの色は変更できない。 コメントの設定はVBEの「ツール」メニューから「オプション」を実行し、エディターの設定タブより、「コメント」を選択するとフォント等について指定することができる。 コメントの前景と背景の色は変更できる。 None 10. __________,__________ 次のコードでマクロを実行するとエラーとなる行はどこか。 選択肢の中から1つ解答しなさい。 Option Explicit Public A As String Dim B As String, C As String Sub Exam1() Dim D As String A = ”Excel” B = ”VBA” C = “Basic” D = ”200” Call Exam2 End Sub Sub Exam2() MsgBox A + B + C + D End Sub D = ”200”の行でエラーとなる。 MsgBox A + B + C + Dの行でエラーになる。 Call Exam2の行でエラーとなる。 エラーは発生しない。 None 11. __________,__________ リボンにある「Visual Basic」アイコンや開発タブについて、誤っているものを選択肢から1つ解答しなさい。 [開発] タブに登録したアイコンは、Excelのバージョンによっては表示されない場合がある。 [開発] タブを表示させるには、 [Excelのオプション] 画面で [リボンのユーザー設定] をクリックし、「メインタブ」から [開発] チェックボックスをオンに設定する。 リボンのアイコンを登録するなどカスタマイズするには、 [ファイル] タブから [オプション] を選択し、 [リボンのユーザー設定] から設定を行う。 リボンの「Visual Basic」アイコンは、Excelの画面からVBEを起動するためのアイコンとして使用できる。 None 12. __________,__________ VBEからマクロを実行する時の説明として間違っているものを、次の選択肢の中から2つ解答しなさい。 VBEからマクロを実行するときに、カーソルの位置がプロシージャの外にあるとマクロダイアログボックスの画面が開く。VBEからマクロを実行するときに、カーソルの位置がプロシージャの外にあるとマクロダイアログボックスの画面が開く。 VBEから指定のプロシージャのマクロを実行するときには、 カーソルの位置を実行したいプロシージャのSubマクロ()名からEnd Subまでの間の 内部にカーソルを置き実行する。 VBEからマクロを実行するには、 [F8] キー押すと実行できる。 VBEからマクロを実行するには、メニューの「ツール」から 「▷ [Sub/ユーザーフォームの実行] 」あるいは、ツールバーの「▷」を押して実行する。 13. __________,__________ 次のコードは、指定したシートの後ろにシートを3枚挿入するマクロである。 空欄に入る適切な語句を選択肢より1つ解答しなさい。 Sub Exam1() Sheets.Add After:=Sheets(“Sheet1”), 【 ① 】:=3 End Sub Number Count Value Times None 14. __________,__________ ブックに関する説明として正しいものを、次の中から2つ選択しなさい。 ActiveWorkbookとThisWorkbookは、常に同じブックになる。 ブックを開くとそのブックが、ActiveWorkbookになる。 現在実施されているマクロが記述されているブックは、ThisWorkbookである。 アクテイブ状態のブックをThisWorkbookと呼ぶ。 15. __________,__________ VBAのオブジェクト式の「プロパティ」について、誤っている説明を選択肢から1つ解答しなさい。 プロパティは、オブジェクトの動作を指定する。 プロパティは、オブジェクトの状態や様子を表す。 プロパティの中には、値を変更できないものもある。 プロパティは、オブジェクト式では「対象.プロパティ= 値」のように記述する。 None 16. __________,__________ マクロの記録について説明した以下の選択肢のうち、正しいものを1つ解答しなさい。 マクロの記録は操作を記録できるが、どのようなコードを使うのかといった、コードを調べることには向かない。 マクロの記録で記録したマクロは、標準モジュールに記録される。 マクロの記録で記録したマクロは、コードウィンドウに記録される。 マクロの記録で記録したコードは、Excelで行う全ての操作を記録できるので、不要な部分がない再現性のあるコードが記録される。 None 17. __________,__________ 次のコードは、B列の数値が3より大きいときは、B列の同じ行の、A列のセルの値をF列へ、B列のセルの値をG列へ代入するマクロである。 次の選択肢の中から空欄に入るものとして適切なものを1つ答えなさい。 Sub Exam1() Dim i As Long, LastRow As Long LastRow = Cells(Rows.Count, 1).End(xlUp).Row For i = 2 To LastRow If Cells(i, 2) > 3 Then With Cells(Rows.Count, 6).End(xlUp) .Offset(1) = Cells(i, 1) 【 ① 】= Cells(i, 2) End With End If Next i End Sub .Offset(0, 1) .Offset(1, 1) .Offset(1, 0) Offset(1, 1) None 18. __________,__________ 次のマクロを実行したとき、メッセージボックスに表示される変数の値について、 正しいものを選択肢の中から1つ答えなさい。 Sub Exam1() Dim i As Long, A As Long For i = 2 To 11 If Cells(i, 1) = “Green” Then A = Cells(i, 1).Offset(2, 1) End If Next i MsgBox A End Sub 700 Gray 400 Orage None 19. __________,__________ 次のマクロの内、メッセージボックスの左から2番目のボタンを押したときの戻り値が、「vbNo」となるコード2つを選択肢より解答しなさい。 Sub Exam1() Dim N As Long N = MsgBox (“完了”, vbRetryNoCancel)End Sub Sub Exam1() Dim N As Long N = MsgBox “完了”, vbYesNoEnd Sub Sub Exam1() Dim N As Long N = MsgBox (“完了”, vbYesNo)End Sub Sub Exam1() Dim N As Long N = MsgBox (“完了”, vbYesNoCancel)End Sub 20. __________,__________ VBAについて説明した以下の選択肢のうち、適切なものを1つ解答しなさい。 VBAとは、マクロを記述するときに使用するプログラミング言語である。 マクロとは、Excelのみを自動実行する機能である。 VBAとは「Virtual Basic Automation」の略である。 マクロとは、マクロ記録で記録した操作を実行するためだけの機能である。 None 21. __________,__________ 次のモジュールの説明のうち誤っているものを選択肢から1つ解答しなさい。 標準モジュールは、Excelブックに保存されるVBAコードを記述するための領域である。 標準モジュールは、1つのブックに複数作成することができる。 標準モジュールは、シートやオブジェクトに関連付けられていないため、どのシートからでも呼び出すことができる。 標準モジュールは、VBAコードを記述するために必要な要素であり、新規ブックにはデフォルトで含まれている。 None 22. __________,__________ 以下の空欄に小数や負の値の売り上げ金額にも対応した、変数の型指定文字を記述したい。 適切でないものはどれか、選択肢の中から一つ解答しなさい。Dim A As 【 ① 】 Currency Integer Double Variant None 23. __________,__________ 次のコードを実行すると結果はどうなったか、適切な結果を選択肢から1つ解答しなさい。 Sub Exam1() ActiveWorkbook.ActiveSheet.Range(“A1”).Value = “VBA” ActiveWorkbook.Save ActiveWorkbook.Close End Sub ブックは閉じられず、保存するかどうかのメッセージが表示される。 ブックの変更内容は、保存されずに閉じられる。 ブックの変更内容は、保存されて閉じられる。 ブックの変更内容は、保存されずに閉じられ、エラーが発生する。 None 24. __________,__________ 次のコードはブック内のシート名、「2」、「3」のセル内に文字列を代入するマクロである。 なおブック内にシートは3枚あり、シート名は左端から下図の順番に並んでいます。 上記のとおりには実行できない、間違っているマクロを選択肢の中から2つ解答しなさい。 Sub Exam1() Sheets(“2”).Range(“A1”).Value = ”ABC” Sheets(“3”).Range(“A1”).Value = ”ABC”End Sub Sub Exam1() Sheets(1).Range(“A1”).Value = ”ABC” Sheets(3).Range(“A1”).Value = ”ABC”End Sub Sub Exam1() Sheets(2).Range(“A1”).Value = ”ABC” ActiveSheet.Range(“A1”).Value = ”ABC”End Sub Sub Exam1() Sheets(“Sheet2”).Range(“A1”).Value = ”ABC” Sheets(“Sheet3”).Range(“A1”).Value = ”ABC”End Sub 25. __________,__________ 次のコードは、メッセージボックスに「R7.10.23」と表示するマクロである。 空欄に入る値として正しいものを選択肢の中から1つ解答しなさい。 Sub Exam1() MsgBox Format(Range(“A2”), “【 ① 】.m.d”) End Sub ge e gg g None 26. __________,__________ マクロの記録ダイアログボックスの設定等の説明として正しいものを、次の選択肢の中からを1つ解答しなさい。 マクロの記録の保存先は、「個人用マクロブック」「作業中のブック」の2種類のみである。 マクロの記録ダイアログボックスのマクロ名のルールには空欄や記号は使用できないが、それ以外にマクロ名のルールは無い。 マクロの記録ダイアログボックスのショートカットキーは、Ctrlキーと半角あるいは全角のアルファベットを登録できる。 マクロに登録されているショートカットキーや説明を調べるとき、「マクロ」ダイアログボックスを表示します。 その後で調べたいマクロを選択して「オプション」をクリックし設定されているショートカットキーや説明を確認できる。 None 27. __________,__________ Cells(3, 5) の説明として正しいものを以下の選択肢から1つ選びなさい。 3行目のE列のセルを指す。 E行目の3列目のセルを指す。 5行目のC列のセルを指す。 5行目のE列のセルを指す。 None 28. __________,__________ 次のコードは、メッセージボックスに値を表示するマクロである。 表示される値として正しいものを選択肢の中から1つ解答しなさい。 Sub Exam1() MsgBox Format(“139765″,”#,###,###”) End Sub 139765 #,###,### 139,765 0,139,765 None 29. __________,__________ プロシージャに関する説明として、適切でないものを一つ解答しなさい。 プロシージャは、大きく分けてSubプロシージャ、Functionプロシージャ、Propertyプロシージャの3種類である。 プロシージャは、必ず値を返すことができる。 プロシージャは、マクロの最小実行単位である。 プロシージャは、Sub プロシージャ名()からEnd Sub間にコードを記述する。 None 30. __________,__________ 次のコードを実行したとき、セルB4に表示される値として正しいものを選択肢の中から解答しなさい。 Sub Exam1() Range(“B2”) = Abs(Range(“A2”)) Range(“B3”) = Abs(Range(“A3”)) Range(“B4”) = Abs(Range(“A4”)) End Sub 11.0 11 11.1 -11.1 None 31. __________,__________ 次のコードは実行したとき、メッセージボックスに値を表示するマクロである。 表示される値として正しいものを選択肢の中から1つ答えなさい。 Sub Exam1() Dim i As Long, N As String For i = 2 To 11 If Cells(i, 3 )> 600 Or Cells(i, 4) < 100 Then If Cells (i, 2) = “warm” Then N = N + Cells(i, 1) End If End If Next i MsgBox N End Sub なし BrownOrange RedYellow BrownOrangeRedYellow None 32. __________,__________ 次のコードでマクロ実行した時、結果がどうなるか選択肢の中から1つ解答しなさい。 Sub Exam1() Dim A As Long, B A = “20” B = “VBA” MsgBox A & B End Sub 「B = “VBA」の行でエラーになる。 メッセージボックスに「20VBA」と表示される。 「MsgBox A & B」の行でエラーになる。 「A = “20”」の行でエラーになる。 None 33. __________,__________ 次のコードは1列目をシートの一番下から上に進み、値がある最初のセル内をクリアにするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Cells(Rows.【 ① 】, 1).End(xlUp).ClearContents End Sub Sum Counta Count Clear None 34. __________,__________ VBAの演算子に関する説明として、間違っているものを選択肢より一つ解答しなさい。 算術演算子は、数値の計算を行う演算子であり、算術演算子を表す記号や文字には+、-、*、/、\、^、Modなどがある。 比較演算子は、値の比較を行う演算子であり、記号や文字にはIs、Like、=、<、>、<=、>=、<>などがある。 演算子には、算術演算子、比較演算子、論理演算子、代入演算子などの種類がある。 演算子は数値を計算するための記号や文字であり、文字列の操作は行わない。 None 35. __________,__________ クイックアクセスツールバー(QAT)ボタンについて説明した以下の選択肢のうち、正しいものを1つ解答しなさい。 QATにマクロを登録すると常にボタンが表示されるが、登録したマクロが記述されていないブックの時ボタンを押してもマクロの実行はできない。 登録したマクロが記述されていないブックの時に、マクロを登録したボタンは非表示にできない。 マクロが記述されているブックの時だけ、マクロが記述されたQATボタンを表示することができる。 QATにマクロを登録後、QATに表示されるボタンの種類変更は可能である。 None 36. __________,__________ 次のVBAの行と列の指定の説明のうち、正しいものを2つ解答しなさい。 行全体を指定するには、Range(“B4”).Rowsと記述する。 列指定はColumnsコレクションで行い、Columns(4)やColumns(“D:F”)と記述する。 行指定はRowsコレクションで行い、Rows(4)やRows(“4:6”)と記述する。 任意のセルで列を指定するには、EntireRowプロパティを使う。 37. __________,__________ 次のコードは、1列目から3列目に入力されている値から日付を認識し、 認識した日付の翌日の年月日を4列目に入力するマクロである。 空欄に入る適切な語句を選択肢の中から解答しなさい。 Sub Exam1() Cells(1,4) =【 ① 】(Cells(1, 1), Cells(1, 2), Cells(1, 3))+1 End Sub Date IsDate DateSerial Day None 38. __________,__________ 次のコードの中で実行したときにエラーとなるものを、選択肢の中から1つ解答しなさい。 Sub Exam1() Dim N As Long,A As Long N = 100 * 5 A = 0 N= A MsgBox A + NEnd Sub Sub Exam1() Dim N As String N = 100 * 5 MsgBox NEnd Sub Sub Exam1() Dim N As String = “VBA” N = N & “Excel”MsgBox NEnd Sub Sub Exam1() Dim N As Long N = “100” * “5” MsgBox NEnd Sub None 39. __________,__________ 次のコードは現在開いているブックが1つ、ブック上のシートが1枚のみの時に、シート上のセルA1に値を代入するマクロです。 コードの記述として、空欄に入る適切なものを選択肢の中から1つ解答しなさい Sub Exam1() 【 ① 】 End Sub WorkBooks(“1”).Sheet(“1”).Range(“A1”).Value = ”北海道” WorkBooks(1).Sheets(1).Range(“A1”).Value = “北海道” WorkBook(1).Sheet(1).Range(“A1”).Value = “北海道” WorkBook(1).Sheets(1).Range(“A1”).Value = “北海道” None 40. __________,__________ 次のマクロを実行したとき、メッセージボックスに表示されるメッセージとして、正しいものを次の選択肢の中から1つ選択しなさい Sub Exam1() MsgBox Replace(Range(”A2”), “a”, “”) End Sub SoutheastaAsia Southest Asi Southest si Range(”A2”) None