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