【ランダム順出題】Access VBA ベーシック 模擬試験 ① Access VBA ベーシック 模擬問題 模擬試験 2026.04.132026.05.01 制限時間は50分です。 問題の出題順や選択肢の並び順は、サイト側で自動でシャッフルされます。 準備が整い次第、ボタンを押して試験を開始してください。 1. リストボックスの項目の追加・削除に関する文章について、空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 RowSourceTypeプロパティが「Value List」に設定されている場合、【 ① 】メソッドを使用してリストボックスに新しい項目を追加できます。 また、項目を削除する場合はRemoveItemメソッドを使用しますが、引数に項目番号を指定して削除する場合、リストボックスの項目番号は【 ② 】から始まる点に注意が必要です。 【 ① 】−AddItem 【 ② 】−0 【 ① 】−AddItem 【 ② 】−1 【 ① 】−InsertItem 【 ② 】−0 【 ① 】−InsertItem 【 ② 】−1 None 2. 次のVBAコードを実行したときの実行結果として正しいものはどれか。以下の選択肢より1つ解答しなさい。 なお、このコードはレポートの「レポートヘッダー」セクションのイベントプロシージャに記述されているものとする。 Private Sub レポートヘッダー_Print(Cancel As Integer, PrintCount As Integer) Me.レポートヘッダー.BackColor = vbWhite End Sub レポートのすべてのセクションの背景色が白になって印刷・プレビューされる。 エラーが発生して印刷やプレビューが実行されない。 レポートヘッダーセクションの背景色が白になって印刷・プレビューされる。 レポートヘッダーセクションの文字色が白になって印刷・プレビューされる。 None 3. 次のVBAコードを実行したときの実行結果として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Private Sub btn1_Click() Me.Filter = "data3 Like '5*'" Me.FilterOn = True MsgBox Me.Recordset.RecordCount Me.FilterOn = False Me.Requery MsgBox Me.Recordset.RecordCount End Sub 両方のメッセージで常に全件数を表示する。 最初のメッセージで全件数を表示し、次のメッセージで抽出件数を表示する。 最初のメッセージで抽出件数を表示し、次のメッセージで最新の全件数を表示する。 フィルタを解除できないため、2回目のメッセージも抽出件数を表示する。 None 4. 次のコードは、ユーザーに実行可否を確認し、「はい」が選択された場合のみ処理を開始するものである。 空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() If MsgBox("実行しますか?", vbYesNo + vbQuestion) = 【 ① 】 Then MsgBox "処理を開始します" Else MsgBox "処理を中止します" End If End Sub vbAbort vbNo vbYes vbOK None 5. 次のコードは、標準モジュールからフォーム「Form1」を参照してフォームの標題を表示する処理と、 フォーム「Form1」のフォームモジュールからフォーム自身を参照してフォームの標題を表示する処理である。 空欄に当てはまる最も適切な組み合わせはどれか。以下の選択肢より1つ解答しなさい。 ' 標準モジュールから実行するプロシージャ Sub Exam1() MsgBox 【 ① 】. Caption End Sub ' フォーム「Form1」のフォームモジュールから実行するプロシージャ Private Sub btn1_Click() MsgBox 【 ② 】. Caption End Sub 【 ① 】−Forms("Form1") 【 ② 】−Me 【 ① 】−Forms("Form1") 【 ② 】−This 【 ① 】−Me 【 ② 】−Forms("Form1") 【 ① 】−Form("Form1") 【 ② 】−Me None 6. 次のコードは、テーブルのdata1フィールドの最小値を求めて表示するものである。 空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As Variant N =【 ① 】("data1", "Table1") MsgBox N End Sub DLookup DMin DSum DCount None 7. 次のコードは、フィールドを定義して新しいテーブル「TableNew」を作成する処理である。空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As String DoCmd.SetWarnings False N = "【 ① 】 TABLE TableNew(data1 TEXT(6) PRIMARY KEY, data2 TEXT(15))" CurrentDb.QueryDefs("Query1").SQL = N DoCmd.OpenQuery "Query1" DoCmd.SetWarnings True MsgBox"完了" End Sub CREATE SELECT INSERT UPDATE None 8. VBEにおけるエラーの種類に関して誤っている記述はどれか。以下の選択肢より1つ解答しなさい。 実行時エラー:コード実行時に処理止まり、継続ができなくなり発生するエラー。 ハードウェアエラー:VBAで発生する標準的なエラー。 論理エラー:コードの記述は正しいがプログラムが意図通りの動作を実行しないエラー。 コンパイルエラー:コードの構文や文法に誤りがある場合に発生し、コード実行ができないエラー。 None 9. メソッドに関する文章について正しいものはどれか。以下の選択肢より1つ解答しなさい。 メソッドはオブジェクトが行う動作に対して命令するものであり、DoCmdオブジェクトにはフォームの表示や印刷などの操作を行うメソッドがある。 VBAでメソッドを実行する際には、「オブジェクト.引数.メソッド」の順で記述する必要がある。 メソッドはプロパティの一種であり、オブジェクトの属性を設定するために使用する。 メソッドには必ず1つ以上の引数が必要であり、引数なしのメソッドは存在しない。 None 10. 次のVBAコードを実行したとき、表示されるメッセージボックスの内容として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim i As Integer i = 10 Do While i < 5 i = i + 1 Loop MsgBox i End Sub 11 10 6 5 None 11. Accessの画面構成に関する文章について、空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 画面左上にある【 ① 】には、Accessやデータベースを操作するコマンドがメニュー形式でまとめられています。 また、その上部にある【 ② 】には頻繁に使われるコマンドが常に表示され、ユーザーがカスタマイズすることもできます。 そして画面上部の【 ③ 】には、よく使用する機能やコマンドがまとめられており、選択したオブジェクトに対し最適なものが表示されるようになっています。 【 ① 】−「ファイル」タブ 【 ② 】−リボン 【 ③ 】−クイックアクセスツールバー 【 ① 】−ドキュメントタブ 【 ② 】−クイックアクセスツールバー 【 ③ 】−ステータスバー 【 ① 】−クイックアクセスツールバー 【 ② 】−「ファイル」タブ 【 ③ 】−リボン 【 ① 】−「ファイル」タブ 【 ② 】−クイックアクセスツールバー 【 ③ 】−リボン None 12. 次のコードは、オブジェクト名を省略して、ナビゲーションウィンドウで最初に見つかったフォームを選択する処理です。 空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() DoCmd.SelectObject acForm, , 【 ① 】 End Sub acLayout True acWindowNormal False None 13. 次のコードは、警告メッセージを表示せずに「Query1」クエリを実行する処理である。空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() DoCmd.SetWarnings 【 ① 】 DoCmd.OpenQuery "Query1" MsgBox"処理実行" End Sub False True 1 Nothing None 14. VBAを使う目的として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Officeアプリケーションの定型作業や処理を自動化するため。 Excelでのデータ入力を手作業で行うため。 Accessでマクロを完全に無効化するため。 Webアプリケーションのセキュリティを強化するため。 None 15. 次のVBAコードは、フォーム上に配置されたテキストボックス(txt1)とボタン(btn1)を操作する処理です。このコードを実行したときの実行結果として正しいものはどれか。 以下の選択肢より1つ解答しなさい。 Private Sub btn1_Click() Me.btn1.SetFocus Me.txt1.Value = "VBA" MsgBox Me.txt1.Text End Sub メッセージボックスに「""(空の文字列)」が表示される。 コンパイルエラーが発生し、実行できない。 メッセージボックスに「VBA」と表示される。 実行時エラーが発生し、処理が中断される。 None 16. レコードが追加されるときのイベントの発生順序に関する文章について、空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 新規レコードが追加されると、BeforeInsert → 【 ① 】→ 【 ② 】→ AfterInsert の順番でイベントが発生します。 【 ① 】−AfterUpdate 【 ② 】−BeforeUpdate 【 ① 】−BeforeDelConfirm 【 ② 】−AfterDelConfirm 【 ① 】−BeforeUpdate 【 ② 】−AfterUpdate 【 ① 】−Activate 【 ② 】−Deactivate None 17. 次のコードは、時刻を含まない現在の日付を表示する処理である。空欄に当てはまる最も適切な関数はどれか。空欄に入る語句を解答しなさい。 Sub Exam1() MsgBox "今日は " & & " です" End Sub 18. ウィンドウに関する文章について、空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 ウィンドウのサイズを変更するには、ウィンドウの【 ① 】をドラッグアンドドロップする。 境界線 タイトルバー アイコン メニューバー None 19. VBE上で構文を誤って記述した場合の動作として正しいものはどれか。以下の選択肢より1つ解答しなさい。 改行時にエラーメッセージが表示され、誤りの行が赤字で表示される。 エラーは表示されず、プロシージャ実行時にのみ中断される。 自動的に正しい構文に修正される。 誤りを含む行でもそのまま実行できる。 None 20. 次のコードは、テーブル「Table Product1」のすべてのフィールドのデータを取得するSQLステートメントを実行する処理である。 空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As String N = "SELECT * 【 ① 】 [Table Product1];" CurrentDb.QueryDefs("Query1").SQL = N DoCmd.OpenQuery "Query1" MsgBox "完了" End Sub FROM WHERE JOIN INTO None 21. 次のVBAコードを実行したとき、表示されるメッセージボックスの内容として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As Integer N = 20 If N < 20 ¥ 2 Then MsgBox "A" Else MsgBox "B" End If End Sub B AとB 20 A None 22. 次のコードは、消費税率を「定数」として宣言し、計算に使用するものである。空欄に当てはまる最も適切なステートメントはどれか。空欄に入る語句を解答しなさい。 Sub Exam1() N As Double = 0.1 MsgBox "消費税率は" & N* 100 & "%です" End Sub 23. 代入演算子と比較演算子に関する文章について誤っているものはどれか。以下の選択肢より1つ解答しなさい。 比較演算子の「=」は、条件式で左右の値が等しいかどうかを判定する。 通常の代入処理では、「==」を使って代入を行う。 「=」は、文脈により代入演算子と比較演算子のどちらかとして扱われる。 代入演算子は、変数やプロパティに値を代入するために使う。 None 24. 次のコードは、文字列「ABC」を半角文字「ABC」に変換して表示する処理である。空欄に当てはまる最も適切な定数はどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() MsgBox StrConv("ABC", 【 ① 】) End Sub vbLowerCase vbNarrow vbUpperCase vbWide None 25. 次のVBAコードを実行したとき、表示されるメッセージボックスの内容として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As Integer N = DatePart("d", #8/15/2023#) MsgBox N End Sub 2023 8 15 31 None 26. 次のコードは、「data4」でグループ化し、グループごとのdata3の平均値を求める処理である。空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As String N = "SELECT data4, 【 ① 】(data3) AS data3平均 " & "FROM Table1 GROUP BY data4;" CurrentDb.QueryDefs("Query1").SQL = N DoCmd.OpenQuery "Query1" MsgBox "完了" End Sub AVG COUNT MAX SUM None 27. 次のコードは、変数に入力されたアルファベットをすべて「小文字」に変換して表示する処理である。 空欄に当てはまる最も適切な関数はどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As String N = "Access VBA" MsgBox【 ① 】(N) End Sub UCase LCase StrConv Format None 28. テーブルで使用するデータ型の説明として、正しいものはどれか。以下の選択肢より1つ解答しなさい。 OLEオブジェクト型は、WebサイトのURLやメールアドレスを格納し、リンク機能を持たせるデータ型である。 Yes/No型は、画像やグラフなどのオブジェクトを埋め込んで格納するためのデータ型である。 通貨型は、計算時の誤差が生じないように、整数部15桁・小数部4桁までの精度で数値を格納するデータ型である。 添付ファイル型は、「はい/いいえ」や「True/False」などの2つの値のうち、いずれか1つを格納するデータ型である。 None 29. 標準プロシージャの作成に関する文章について誤っているものはどれか。以下の選択肢より1つ解答しなさい。 VBEで標準モジュールを作成した後、コードウィンドウに直接「Sub 任意のプロシージャ名」と記述し、Enterキーを押すと、自動で「Sub 任意のプロシージャ名()」と補完され「End Sub」が自動で挿入される。 VBEのコードウィンドウで記述したSubプロシージャは、F5キーを押すことで実行できる。 VBEで標準プロシージャを作成する際、「Sub」というキーワードは省略できる。 標準プロシージャは、標準モジュールに記述して作成する。 None 30. 次のコードは、テーブル「Table Sports1」から「data3」が 1500、3000、4500 のいずれかに一致するレコードを抽出する処理である。 空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As String N = "SELECT * FROM [Table Sports1] WHERE data3 【 ① 】(1500, 3000, 4500);" CurrentDb.QueryDefs("Query1").SQL = N DoCmd.OpenQuery "Query1" MsgBox "完了"End Sub LIKE OR BETWEEN IN None 31. 標準モジュールの作成に関する文章について誤っているものはどれか。以下の選択肢より1つ解答しなさい。 標準モジュールは常にフォームやレポートに関連づけて使用する。 標準モジュールはナビゲーションウィンドウに表示される。 VBEを開いた状態で標準モジュールを作成するには、「挿入」メニューから「標準モジュール」を選択する。 プロジェクトエクスプローラを右クリックして標準モジュールを作成することもできる。 None 32. 次のVBAコードを実行したとき、表示されるメッセージボックスの内容として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As Integer N = 75 MsgBox IIf (N >= 80, "〇", "×") End Sub × 〇 エラーになる 75 None 33. コントロールへのフォーカス移動に関する文章について、空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 VBAを使用して指定したコントロールにフォーカスを移動するには、コントロールの【 ① 】メソッドを使用します。 これは、DoCmdオブジェクトの【 ② 】メソッドを使用した場合と同じような処理を行うことができます。 【 ① 】−SelectObject 【 ② 】−FindRecord 【 ① 】−SetFocus 【 ② 】−GoToControl 【 ① 】−GoToControl 【 ② 】−SetFocus 【 ① 】−Requery 【 ② 】−MoveNext None 34. フォームとレポートに共通する特徴に関する文章について誤っているものはどれか。以下の選択肢より1つ解答しなさい。 どちらも必ずグループヘッダーとグループフッターのセクションを持つ。 どちらもデザインビューで作成・編集が可能である。 どちらもコントロールを配置することができる。 どちらもウィザードを使って作成できる。 None 35. 次のコードは、テーブル「Table1」をExcelファイルとして出力する処理である。空欄に当てはまる最も適切なものはどれか。 以下の選択肢より1つ解答しなさい。 Sub Exam1() DoCmd.OutputTo 【 ① 】, "Table1", 【 ② 】,"C:¥test¥test2.xlsx", True End Sub 【 ① 】−acOutputForm 【 ② 】−acFormatTXT 【 ① 】−acOutputTable 【 ② 】−acFormatTXT 【 ① 】−acOutputTable 【 ② 】−acFormatXLSX 【 ① 】−acOutputForm 【 ② 】−acFormatXLSX None 36. 次のVBAコードを実行したときの実行結果として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() DoCmd.OpenForm "Form1" DoCmd.OpenTable "Table1" DoCmd.Save acForm, "Form1" DoCmd.Close acTable,"Table1", acSaveYes MsgBox "完了" End Sub フォームとテーブルの両方を保存して閉じる。 フォームを保存し、テーブルを保存して閉じる。 何も保存せず閉じる。 テーブルを保存し、フォームを保存して閉じる。 None 37. 次のコードは、繰り返し処理の回数をイミディエイトウィンドウに表示させる処理である。空欄に当てはまる最も適切なものはどれか。 以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim i As Long For i = 1 To 5 【 ① 】 i & " 回目" Next i End Sub Watch Debug.Print MsgBox Stop None 38. VBEの画面構成に関する文章について、空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 選択されているオブジェクトのプロパティを表示・編集できるのは、VBEの【 ① 】である。 イミディエイトウィンドウ プロジェクトエクスプローラ コードウィンドウ プロパティウィンドウ None 39. 次のVBAコードのように、1行で複数の変数を宣言したとき、変数「A」と変数「B」のデータ型の組み合わせとして正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim A, B As String End Sub Aはバリアント型(Variant)、Bは文字列型(String) Aは文字列型(String)、Bはバリアント型(Variant) Aは文字列型(String)、Bは文字列型(String) Aはバリアント型(Variant)、Bはバリアント型(Variant) None 40. 次のVBAコードを実行したとき、表示されるメッセージボックスの内容として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim i As Integer For i = 1 To 10 If i = 3 Then Exit For End If Next i MsgBox i End Sub 11 3 10 4 None