【ランダム順出題】Access VBA ベーシック 模擬試験 ⑥ Access VBA ベーシック 模擬問題 模擬試験 2026.05.04 制限時間は50分です。 問題の出題順や選択肢の並び順は、サイト側で自動でシャッフルされます。 準備が整い次第、ボタンを押して試験を開始してください。 1. 次のVBAコードを実行したときの動作として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() DoCmd.Echo False DoCmd.OpenForm "Form1" DoCmd.OpenForm "Form2" DoCmd.Echo True End Sub 処理中のエラーが無視され、最後にエラー通知が有効になる。 システム警告メッセージが非表示になり、最後に表示されるようになる。 画面の再描画が停止された状態で処理が行われ、最後に再開される。 ステータスバーの表示が消え、最後に再表示される。 None 2. 次のコードは、" Table1"テーブルから"data3"が20であるレコードの"data1"フィールドの値を取得して表示する処理である。空欄に当てはまる最も適切な関数はどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As Variant N = 【 ① 】("data1", " Table1", "data3 = 20") MsgBox N End Sub DSelect DLookup DCount DMax None 3. 次のコードは、カレントレコードのレコード番号を表示する処理である。空欄に当てはまる最も適切なプロパティはどれか。以下の選択肢より1つ解答しなさい。 Private Sub btn1_Click() MsgBox Forms("Form1").【 ① 】& "がカレントレコード番号です" End Sub NoMatch OptionValue CurrentRecord RecordCount None 4. Accessの画面から標準モジュールを新しく作成する手順として、正しいものはどれか。以下の選択肢より1つ解答しなさい。 リボンの「データベース ツール」タブの「マクロ」グループから「Visual Basic」ボタンをクリックする。 リボンの「ホーム」タブの「レコード」グループから「新規作成」ボタンをクリックする。 リボンの「作成」タブの「マクロとコード」グループから「標準モジュール」ボタンをクリックする。 ナビゲーションウィンドウの何もない場所を右クリックし、ショートカットメニューから「挿入」→「標準モジュール」を選択する。 None 5. VBEでのヘルプの利用に関する記述として、正しいものはどれか。以下の選択肢より1つ解答しなさい。 VBAのコードでエラーが発生した場合、F1キーを押せば自動でエラーの原因を修正してくれる。 VBE上で調べたいキーワード(関数やステートメントなど)にカーソルを置き、F1キーを押すと、そのキーワードに関連するヘルプが表示される。 ヘルプ機能を利用するには、必ず「ヘルプ」メニューからキーワードを手入力して検索しなければならない。 F1キーを押すと、VBEのコードウィンドウ内に直接ヘルプの解説文が挿入される。 None 6. VBEの画面構成に関する文章について、空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 VBEにおいて、開いているプロジェクトに含まれるモジュールを階層(ツリー)形式で一覧表示し、管理するためのウィンドウを【 ① 】と呼びます。 コードウィンドウ イミディエイトウィンドウ プロパティウィンドウ プロジェクトエクスプローラ None 7. Accessのクエリに関する文章について誤っているものはどれか。以下の選択肢より1つ解答しなさい。 SQLビューでは、SQL文を直接入力してクエリを作成できる。 クエリは常にデザインビューで作成しなければならない。 クエリは、テーブルなどのデータを一括操作するためのオブジェクトである。 アクションクエリでは、データの追加・削除・更新などが行える。 None 8. 次のコードはFormatイベントで、レポートヘッダーの印刷制御を行う処理である。 空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 Private Sub レポートヘッダー_Format(Cancel As Integer,FormatCount As Integer) Me.【 ① 】= False End Sub Print Visible PrintSection BackColor None 9. 次のコードは、Table Product1テーブルからフィールド名「Price」が10000から30000までのデータを抽出するSQL文を設定し、クエリを開く処理である。 空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As String N = "SELECT * FROM [Table Product1] WHERE Price 【 ① 】 10000 AND 30000;" CurrentDb.QueryDefs("Query1").SQL = N DoCmd.OpenQuery "Query1" End Sub NOT LIKE BETWEEN IN None 10. Accessデータベースの配布形式に関する記述として、誤っているものはどれか。以下の選択肢より1つ解答しなさい。 「accdb」は通常のデータベースファイル形式であり、ユーザーがアプリケーションのカスタマイズを行うことができる。 「accdr」はデジタル署名付きのデータべースファイル形式であり、セキュリティを強化する目的で主に使用される。 「accde」は実行専用のデータベースファイル形式であり、VBAコードがコンパイルされ、元のソースコードは削除されている。 コードを保護・秘匿するという点からは、プロジェクトのロックをかけた「accdb」形式で配布するよりも、「accde」形式で配布する方が安全である。 None 11. テーブルで使用するデータ型に関する文章について、空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 テーブルのフィールドに、最大255文字までの文字列を格納する場合に使用するデータ型は【 ① 】である。 日付/時刻型 数値型 短いテキスト型 長いテキスト型 None 12. 次のVBAコードはFormat関数を使用して数値と文字列を特定の書式に変換し、メッセージボックスに表示する処理である。 空欄に当てはまる書式記号のうち、指定した桁や位置に元のデータが存在しない場合、数値には「0」、文字列には「スペース」が両方とも入らない書式指定の組み合わせとして正しいものはどれか。 以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim A As String Dim B As String A = Format(1234, "【 ① 】") B = Format("VBA", "【 ② 】") MsgBox A & vbCrLf & B End Sub 【 ① 】000,000 【 ② 】&&&_&&& 【 ① 】###,### 【 ② 】&&&_&&& 【 ① 】000,000 【 ② 】@@@_@@@ 【 ① 】###,### 【 ② 】@@@_@@@ None 13. VBEのウィンドウ操作に関する文章について、空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 VBEの各ウィンドウは、画面の枠に固定して配置する【 ① 】状態と、独立したウィンドウとして画面上の自由な位置に配置する【 ② 】状態を切り替えることができます。 【 ① 】−固定 【 ② 】−解放 【 ① 】−フローティング 【 ② 】−ドッキング 【 ① 】−アクティブ 【 ② 】−非アクティブ 【 ① 】−ドッキング 【 ② 】−フローティング None 14. 次のコードは、配列のすべての要素を順番にイミディエイトウィンドウに出力する処理である。 配列の要素数が変わっても対応できるように、ループの終了値に配列の最大インデックス番号を取得する関数を使用したい。 空欄に当てはまる最も適切な関数を解答しなさい。 Sub Exam1() Dim N As Variant Dim i As Integer N = Array("1", "2", "3", "4") For i = LBound(N) To (N) Debug.Print N(i) Next i End Sub 15. 定数に関する文章について正しいものはどれか。以下の選択肢より1つ解答しなさい。 定数は、宣言後に必要に応じて値を代入することができる。 定数とは、値を何度でも変更できる変数の別名である。 定数を宣言するには、Dimステートメントを使用する。 定数を宣言するには、Constステートメントを使用する。 None 16. デバッグ機能のステップイン実行に関する文章について,空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 ステップイン実行は,プロシージャのステートメントを【 ① 】単位で実行し,動作を確認する機能です。 ステップイン実行を行うには、【 ② 】キーを押します。 なお、ステップイン実行を行うと,実行箇所が黄色く反転して一時停止しますが,この黄色く反転しているステートメントは【 ③ 】という点に注意が必要です。 【 ① 】−1行 【 ② 】−F8 【 ③ 】−まだ実行されていない 【 ① 】−1行 【 ② 】−F9 【 ③ 】−すでに実行されている 【 ① 】−プロシージャ 【 ② 】−F5 【 ③ 】−すでに実行されている 【 ① 】−モジュール 【 ② 】−F1 【 ③ 】−まだ実行されていない None 17. イベントプロシージャに関する記述として正しいものはどれか。以下の選択肢より1つ解答しなさい。 イベントプロシージャは、フォームを開く、ボタンをクリックするといった操作が行われたときに自動的に実行される。 イベントプロシージャは、標準モジュールに作成されるのが一般的である。 イベントプロシージャは、他のプロシージャから呼び出すことはできない。 イベントプロシージャの名前は、ユーザーが自由に決めることができる。 None 18. 次のコードは,文字列 "A-B-C" をハイフン "-" で分割し,配列に格納した後,配列を「:」 区切りで結合して表示します。 空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As Variant N = 【 ① 】("A-B-C","-") MsgBox 【 ② 】(N, ":") End Sub 【 ① 】−Replace 【 ② 】−Join 【 ① 】−InStr 【 ② 】−Replace 【 ① 】−Split 【 ② 】−Join 【 ① 】−Join 【 ② 】−Split None 19. 次のVBAコードを2回実行したときの実行結果として正しいものはどれか、以下の選択肢より1つ解答しなさい。 Private Sub btn1_Click() If Me.RecordSelectors = True Then Me.RecordSelectors = False Else Me.RecordSelectors = False End If MsgBox "完了" End Sub 2回目でエラーが発生する。 2回目でレコードセレクタの表示状態が元に戻る。 2回目で全レコードが選択される。 2回目でもレコードセレクタの表示状態は1回目実行後のままである。 None 20. 次のVBAコードを実行したときの結果として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() DoCmd.OutputTo acOutputReport, "Report1", acFormatHTML, "C:¥work¥Invoice.html" MsgBox "完了" End Sub レポート「Report1」がプリンタで印刷される。 レポート「Report1」がExcel形式でエクスポートされる。 レポート「Report1」が画面上でプレビュー表示される。 レポート「Report1」がHTML形式で指定の場所に保存される。 None 21. 次のコードは、レコードが更新される直前に実行されるイベントプロシージャである。空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 Private Sub Form_【 ① 】 (Cancel As Integer) If Len(Me.data3.Value & "") = 0 Then MsgBox "data3が入力されていないため、保存をキャンセルします" Cancel = True End If End Sub AfterUpdate BeforeInsert BeforeUpdate AfterInsert None 22. 次のVBAコードを実行したとき、最初に表示されるメッセージと最後に表示されるメッセージの内容として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim i As Long Dim j As Long For i = 1 To 3 For j = 1 To 2 MsgBox j & "-" & i Next j Next i End Sub 最初:「1-3」 最後:「2-1」 最初:「1-1」 最後:「3-2」 最初:「3-1」 最後:「2-3」 最初:「1-1」 最後:「2-3」 None 23. Exitステートメントに関する文章について、空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 「Exit Do」と「Exit For」の主な違いは、処理を抜ける対象の繰り返し構造がそれぞれ【 ① 】と【 ② 】であることである。 【 ① 】−Do…Loopステートメント 【 ② 】−For…Nextステートメント 【 ① 】−Subプロシージャ 【 ② 】−Functionプロシージャ 【 ① 】−For…Nextステートメント 【 ② 】−Do…Loopステートメント 【 ① 】−Functionプロシージャ 【 ② 】−Subプロシージャ None 24. 次のコードは、フォームモジュール内に記述されており、フォームの表題に表示されている文字列を表示する処理である。 空欄に当てはまる最も適切な語句はどれか。以下の選択肢より1つ解答しなさい。 Private Sub btn1_Click() MsgBox【 ① 】. Caption End Sub Subject Me Reports Forms None 25. 変数Nへの値の代入や変数Nの値の取得(利用)に関する記述として、誤っているコードはどれか。 以下の選択肢より1つ解答しなさい。 変数の値をメッセージボックスに表示する場合: MsgBox N 変数の値を別の変数「NewName」に渡す(代入する)場合: N = NewName 変数の値をフォームの標題(Caption)に設定する場合: Me.Caption = N 変数に文字列 "佐藤" を代入する場合: N = "佐藤" None 26. VBAにおけるプロパティの取得と設定に関する記述として正しいものはどれか。以下の選択肢より1つ解答しなさい。 プロパティの値を取得する場合は「オブジェクト.プロパティ = 変数」と記述する。 プロパティとは、オブジェクトに対して「閉じる」「印刷する」などの動作を指示する命令のことである。 プロパティに値を設定する場合は「オブジェクト.プロパティ = 値」と記述する。 テキストボックスの値をVBAで取得する場合、Valueプロパティは省略することができない。 None 27. コントロールに関する文章について、空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 フォームのタイトルバーに表示される文字列や、ユーザーに見える標題を返すのは【 ① 】プロパティであり、フォームやコントロールをVBAで識別する際に利用されるのは【 ② 】プロパティです。 【 ① 】−Caption 【 ② 】−Name 【 ① 】−RowSource 【 ② 】−Value 【 ① 】−Text 【 ② 】−Name 【 ① 】−Value 【 ② 】−Caption None 28. 次のVBAコードを実行したときの実行結果として正しいものはどれか。以下の選択肢より1つ解答しなさい。 (※実行前において、データベース内に"Table1"は存在し、"Table10"は存在しないものとします。) Sub Exam1() Dim N As String DoCmd.SetWarnings False N = "SELECT * INTO Table10 FROM Table1;" DoCmd.RunSQL N DoCmd.SetWarnings True MsgBox "完了" End Sub 「Table1」と「Table10」が結合された新しいテーブルが作成される。 「Table10」のすべてのレコードが、「Table1」に追加される。 「Table1」のすべてのレコードが削除され、空のテーブル「Table10」が作成される。 「Table1」のすべてのレコードを含む、新しいテーブル「Table10」が作成される。 None 29. 次のVBAコードを実行したとき、レポート"Report1"はどのように実行されるか。以下の選択肢より1つ解答しなさい。 Sub Exam1() DoCmd.OpenReport "Report1", acViewPreview End Sub プリンタに直接印刷される。 レイアウトビューで表示される。 画面に印刷プレビューが表示される。 デザインビューで表示される。 None 30. VBEにおけるコードの編集作業の支援機能について、誤っているものはどれか。以下の選択肢より1つ解答しなさい。 VBEには自動スペルチェック機能があり、スペルミスをしてキーワードを入力した場合、自動的に正しいスペルに修正される。 VBAの書式や構文を誤って記述して改行した際、エラーメッセージを表示し構文の誤りを指摘する機能を自動構文チェックという。 VBAのキーワードや関数名などを小文字で入力しても、正しいスペルであれば自動的に先頭が大文字に変換される。 変数を宣言する際、大文字と小文字を組み合わせた変数名(例:Vba)を設定しておくと、以降小文字で入力しても自動で宣言した大文字小文字の組み合わせに変換される。 None 31. 次のVBAコードを実行したときの実行結果として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As String N = "SELECT data4, Count(ID) AS group件数 FROM Table1 GROUP BY data4;" CurrentDb.QueryDefs("Query1").SQL = N DoCmd.OpenQuery "Query1" MsgBox "完了" End Sub 「ID」でグループ化され、グループ毎の件数が (レコード数)が「group件数」として表示される。 「data4」でグループ化され、グループ毎の件数(レコード数)が「group件数」として表示される。 「data4」で並べ替えられ、すべてのデータが一覧で表示される。 エラーが発生して処理は実行されない。 None 32. 次のVBAコードは、フォーム上に配置されたボタン(btn1)をクリックし、リストボックス(list1)に、指定した値のリストをデータとして表示するための処理です。 空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。→ Private Sub btn1_Click() Me.list1.【 ① 】 = "Value List" Me.list1.【 ② 】 = "9;8;7;6;5" MsgBox "完了" End Sub 【 ① 】−RowSource 【 ② 】−RowSourceType 【 ① 】−RecordSource 【 ② 】−RowSource 【 ① 】−RowSourceType 【 ② 】−ControlSource 【 ① 】−RowSourceType 【 ② 】−RowSource None 33. 次のコードは、条件分岐の基本構造の記述です。空欄に当てはまる最も適切な語句を解答しなさい。 Sub Exam1() N < 10 Then MsgBox "10未満です" End If End Sub 34. 次のVBAコードを実行したとき、順番に表示される2回のメッセージボックスの内容として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim A As Date Dim B As Date A = #12/17/2025# B = #12/31/2025# MsgBox DateDiff("d",A,B) MsgBox DateDiff("ww",A,B) End Sub 「0」「14」 「2」「14」 「14」「2」 「14」「0」 None 35. データベースを操作するための言語である「SQL」は、何の略称か。最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 Structured Query Language Standard Query Language Structured Question Language System Query Language None 36. 次のコードは、変数の値が数値として評価できるかどうかを判定する処理である。 空欄に当てはまる最も適切な関数はどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As Variant N = "123" If 【 ① 】(N) Then MsgBox "数値です" Else MsgBox "数値ではありません" End If End Sub IsNull IsNumeric IsDate Nz None 37. 次のVBAコードを実行したとき、最初に表示されるメッセージと最後に表示されるメッセージの内容として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim A As Integer, B As Integer A = 10 B = 20 MsgBox (A > 5) And (B < 10) MsgBox (A > 15) Or (B = 20) End Sub 最初:False 最後:False 最初:True 最後:False 最初:True 最後:True 最初:False 最後:True None 38. 次のVBAコードを実行したとき、表示されるメッセージボックスの内容として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() MsgBox InStr(5, "ABCDEFGCDE", "CDE") End Sub 3 0 8 5 None 39. 次のコードは、アクティブなオブジェクト(レポートなど)の1ページ目から3ページ目までを印刷する処理である。 空欄に当てはまる最も適切な語句はどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() DoCmd.【 ① 】 acPrintAll, 1, 3 MsgBox "完了" End Sub Print PrintOut OutputTo SelectObject None 40. VBAの参照設定に関する記述として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Access VBAからExcelなどの外部アプリケーションを操作する場合、参照設定を行うことで「事前バインディング」を利用でき、コード記述時の支援機能が働くようになる。 一度参照設定を行うと、その設定は他のすべてのAccessデータベースファイルにも自動的に適用される。 参照設定は、VBEの「表示」メニューから「参照設定」を選択して行う。 参照設定を行わなくても、外部ライブラリの定数やデータ型は自動的に補完入力される。 None