【ランダム順出題】Access VBA ベーシック 模擬問題 Access VBA ベーシック 模擬問題 模擬試験 2026.04.232026.06.11 制限時間は50分です。 問題の出題順や選択肢の並び順は、サイト側で自動でシャッフルされます。 準備が整い次第、ボタンを押して試験を開始してください。 1. VBEのデバッグ作業でステップインを実行するショートカットキーはどれか。以下の選択肢より1つ解答しなさい。 F8キー Ctrl+F8キー Ctrl+Breakキー Ctrl+Jキー None 2. Accessのクエリの種類に関する記述として、誤っているものはどれか。以下の選択肢より1つ解答しなさい。 クロス集計クエリは、テーブルなどのデータを変更するアクションクエリの一種である。 パススルークエリやユニオンクエリは、SQLクエリと呼ばれる種類に含まれる。 選択クエリは、主にデータを抽出するクエリである。 アクションクエリは、テーブルなどのデータ変更を行うクエリである。 None 3. 次のコードは、数値として扱われている「12345」を、文字列型のデータに変換して変数に格納する処理である。 空欄に当てはまる最も適切な関数はどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As String N = 【 ① 】(12345) MsgBox TypeName(N) End Sub CInt CLng CStr CDate None 4. テーブルのフィールドを主キーに設定できない条件(状態)として正しいものはどれか。以下の選択肢より1つ解答しなさい。 フィールドにNull値が含まれている。 フィールドのデータ型が短いテキスト型である。 他のレコードの値と重複していない。 複数のフィールドを組み合わせて指定している。 None 5. 次のVBAコードを実行したときの実行結果として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As String DoCmd.SetWarnings False N = "UPDATE T競技 SET 利用料金 = Null" DoCmd.RunSQL N DoCmd.SetWarnings True MsgBox "完了" End Sub 実行しても Null値に更新できない。 構文エラーとなる。 「T競技」の最初の1レコードのみ、「利用料金」フィールドの値がNull値に更新される。 「T競技」のすべてのレコードにおいて、「利用料金」フィールドの値がNull値に更新される。 None 6. Accessのフォームで、キーボードのANSIキー(アルファベットや数字などの標準的なキー)が押されたときに発生するイベントの順番として、正しいものはどれか。以下の選択肢より1つ解答しなさい。 Change → KeyDown → KeyPress → KeyUp KeyPress → KeyDown → Change → KeyUp KeyDown → KeyPress → Change → KeyUp KeyDown → Change → KeyPress → KeyUp None 7. 以下のコードを実行した際、フォームの左端に表示されるレコードセレクタの表示/非表示を切り替えます。空欄に当てはまる最も適切なプロパティを以下の選択肢より1つ解答しなさい。 Private Sub btn1_Click() Me.【 ① 】= False MsgBox “レコードセレクタを非表示にしました。” End Sub SetFocus RecordSelectors RecordSource RecordSet None 8. 次のコードは「Table1」テーブルをデータシートビューで開く例である。 空欄に当てはまる最も適切な語句はどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() DoCmd.OpenTable "Table1", 【 ① 】,acReadOnly End Sub acViewNormal acViewPreview acViewDesign acDesign None 9. 次のコードは、指定した数のスペースを作成し、文字列の間に挿入する処理である。空欄に当てはまる最も適切な関数はどれか。適切な語句を解答しなさい。 Sub Exam1() MsgBox "Access" & (5) & "VBA" End Sub 10. 次のVBAコードを実行したとき、表示されるメッセージボックスの内容として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() MsgBox Format(#12/5/2023#, "yyyy/mm/dd") End Sub 2023/12/5 2023/12/05 2023-12-05 05/12/2023 None 11. SELECTステートメントで、重複するレコードを排除して1件にする場合に使用する語句はどれか。以下の選択肢より1つ解答しなさい。 GROUP BY DISTINCT IN LIKE None 12. 以下のコードを実行した際の結果として、最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim A As Long A = 30/2 If A > 10 Then MsgBox "入力値は10より大きい。" End If End Sub コードは正常に実行されるが、メッセージボックスは何も表示されない。 コードは正常に実行され、メッセージボックスに「入力値は10より大きい。」と表示される。 実行時エラーが発生する。 コンパイルエラーが発生する。 None 13. VBEのコードウィンドウに表示される「オブジェクトボックス」に関する説明として、最も適切なものはどれか。 以下の選択肢より1つ解答しなさい。 イベントプロシージャに関連付けられているオブジェクト名を表示する。 現在のプロジェクトにあるすべてのモジュールを階層構造で表示する。 実行中のプロシージャ内にある、すべての変数の値を確認できる。 現在カーソルのあるプロシージャのみを表示する。 None 14. 次のVBAコードを実行したとき、メッセージボックスに表示される結果として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() MsgBox 10/( 5 * 2 ) End Sub 10 1 4 0 None 15. 以下のコードにおいて、SQLのWHERE句でBetween…And演算子を使用して販売価格の範囲指定を行うSQL文と同じ意味になるように、空欄に当てはまる適切な演算子の組み合わせを選びなさい。 Sub Exam1() Dim N As String N = "SELECT * FROM T競技 WHERE 利用料金 【 ① 】 300 And 利用料金【 ② 】500; " CurrentDb.QueryDefs("Q競技").SQL = N DoCmd.OpenQuery “Q競技” End Sub 【 ① 】− >= 【 ② 】− <= 【 ① 】− >【 ② 】− < 【 ① 】− From 【 ② 】− To 【 ① 】− Is 【 ② 】− Or None 16. 次のコードは、変数を宣言しメッセージを表示する処理である。空欄に当てはまる最も適切なものはどれか。適切な語句を解答しなさい。 Sub Exam1() N As String N = "VBA" MsgBox N End Sub 17. 以下の文章はAccessのデータ型について説明したものである。空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 金額などの計算を行うための数値を格納するデータ型は【 ① 】である。 オートナンバー型 数値型 OLEオブジェクト型 通貨型 None 18. 以下のコードを実行した際、リストボックスに表示される列数を設定します。 空欄に入る最も適切なプロパティを以下の選択肢より1つ解答しなさい。 なお list1はリストボックスのことです。 Private Sub btn_Click() Me.list1.【 ① 】= 2 Me.list1.RowSourceType = "Table/Query" Me.list1.RowSource = "T競技" MsgBox "リストボックスの表示列数を2列に設定しました。" End Sub RowCount ColumnCount ColumnsCount CountColumn None 19. 次のVBAコードを実行したとき、表示されるメッセージボックスの内容として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As Integer N = 0 Do While N > 0 MsgBox N N = N-1 Loop End Sub 0が1回表示される。 ループが無限に続きメッセージが何度も表示される。 エラーが発生する。 メッセージは表示されない。 None 20. 次のコードは、メッセージを表示する処理です。なおコード内にはコメントを記述しています。 空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() MsgBox "Hello" 【 ① 】これはメッセージ表示です。 End Sub + : ' " None 21. Access VBAにおける「コントロール」に関する説明として、最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 フォームやレポートの元になるデータを設定するためのプロパティである。 フォームやレポート内に配置されるテキストボックスやコンボボックスなどの部品である。 VBAのプログラムコードを格納するための特別なモジュールである。 データベース内のテーブルに保存されている個々のレコードのことである。 None 22. イベントプロシージャをVisual Basic Editor (VBE) から作成する際の手順に関する記述として、最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 イベントプロシージャを作成したいフォームをデザインビューで開き、プロパティシートの「その他」タブからイベントを選択し、「ビルド」ボタンをクリックする。 VBEを起動後、直接「挿入」メニューから「イベントプロシージャ」を選択し、表示されるダイアログでフォームとイベントを指定する。 VBEのツールバーにある「イベント作成」ボタンをクリックし、リストからイベントを選択すると自動的にコードが生成される。 VBEで、イベントプロシージャを作成するフォームまたはレポートのモジュールを選択し、「オブジェクト」ボックスから対象のオブジェクトを選び、次に「プロシージャ」ボックスから作成したいイベントを選択する。 None 23. For Each...Next ステートメントにおいて、繰り返し処理の対象として指定できるグループと、その際に要素変数として指定するデータ型の組み合わせに関する記述として、正しいものはどれか。以下の選択肢より1つ解答しなさい。 対象には「配列」や「コレクション」を指定でき、対象が配列の場合は「バリアント型」、コレクションの場合は「バリアント型あるいはオブジェクト型」を指定する。 対象には「配列」や「コレクション」を指定でき、対象が配列の場合は「文字列型(String)」、コレクションの場合は「オブジェクト型」を指定しなければならない。 対象には「配列」のみを指定でき、要素変数は常に「バリアント型」を指定する。 対象には「テーブル」や「クエリ」を指定でき、要素変数はすべて「バリアント型」を指定する。 None 24. 以下のコードは、Accessのフォームがレコードが表示される際に実行されるイベントプロシージャです。 空欄に当てはまる最も適切なイベント名を以下の選択肢より1つ解答しなさい。 Private Sub Form_【 ① 】() MsgBox "完了" End Sub Load Activate Open Unload None 25. 次のコードは、レポート"Report1"を選択しアクティブにする処理である。空欄に当てはまる最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() DoCmd.SelectObject 【 ① 】, "Report1" End Sub Report acReport acTable acQuery None 26. 「配列」に関する記述として、最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 複数の値を区切られたマス目に格納し、インデックス番号で個々の要素を操作できる。 値を変更できない固定されたデータを、プログラム内で繰り返し利用するための名前である。 異なるデータ型の値を複数、まとめて格納できる特別なデータ構造である。 プログラムの実行中に変化する値を一つだけ一時的に格納するためのメモリ領域である。 None 27. 以下コードを実行した際、メッセージボックスに表示される結果として最も適切なものはどれか。 選択肢から1つ解答しなさい。 Sub Exam1() Dim N As Variant N = Array("V", "B", "A") MsgBox LBound(N) End Sub メッセージボックスに「-1」と表示される。 実行時エラーが発生する。 メッセージボックスに「0」と表示される。 メッセージボックスに「1」と表示される。 None 28. 次のVBAコードを実行したとき、表示されるメッセージボックスの内容として正しいものはどれか。 以下の選択肢より1つ解答しなさい。 Sub Exam1() MsgBox DateDiff("yyyy", #4/1/2020#, #4/1/2023#) End Sub 3 1095 365 2023 None 29. 乱数を使用する際、乱数を初期化して、実行するたびに「1から10」の乱数が発生するようにするために使用する関数はどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As Integer 【 ① 】 N = Int((10 - 1 + 1) * Rnd + 1) MsgBox "本日のラッキーナンバーは " & N & " です!" End Sub InitRandom Round Fix Randomize None 30. 次のコードは、指定した条件を使って、次のレコードを検索する処理である。 空欄に当てはまる最も適切なメソッドはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() DoCmd.GoToControl "data2" DoCmd.FindRecord "D", acStart DoCmd.【 ① 】 End Sub GoToControl SearchNext FindContinue FindNext None 31. 以下のVBAコードは、Accessデータベースのテーブルから特定の条件を満たすレコードを抽出するためのSELECTステートメントを示しています。 空欄に当てはまる最も適切な語句を以下の選択肢より1つ解答しなさい。 Sub Exam1() Dim N As String N = "SELECT * FROM T競技 【 ① 】 利用料金 > 500; " CurrentDb.QueryDefs("Q競技").SQL = N DoCmd.OpenQuery "Q競技” End Sub ORDER BY WHERE HAVING GROUP BY None 32. テーブルの正規化に関する記述として、正しいものはどれか。以下の選択肢より1つ解答しなさい。 正規化とは、データの重複をなくし、矛盾が生じないようにテーブルを分割して整理することである。 正規化を行う主な目的は、1つのテーブルにすべての情報を集約することである。 正規化を進めるとテーブルの数は減り、データ管理が単純になる。 正規化されたデータベースでは、他のテーブルとのリレーションシップ(関連付け)は不要になる。 None 33. 次のVBAコードを実行したときの実行結果として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() MsgBox Forms("Form1").txt1.Value End Sub テキストボックス「Form1」の値が表示される。 テキストボックスは参照できないため、エラーが発生する。 フォーム「Form1」内のテキストボックス「txt1」内の値が表示される。 「txt1」という文字列そのものが表示される。 None 34. データ型の格納に関する文章について正しいものはどれか。以下の選択肢より1つ解答しなさい。 String型は、0〜255の数値である。 Boolean型は、日付と時刻である。 Long型は、-2,147,483,648〜2,147,483,647の整数である。 Date型は、「True」または「False」の論理値のみである。 None 35. 以下のコードを実行した際の結果として最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 ただし、InputBoxには文字列の「B」が入力されたものと仮定します。 Sub Exam1() Dim N As String N = InputBox(”成績をアルファベットで入力してください (A, B, C) ”) SELECT Case N Case ”A” MsgBox ”素晴らしい成績です!” Case “B”, “C” MsgBox “良い成績です。” Case Else MsgBox “その他の成績です。” End SELECT End Sub コードは正常に実行され、メッセージボックスに「素晴らしい成績です!」と表示される。 コードは正常に実行され、メッセージボックスに「良い成績です。」と表示される。 コンパイルエラーが発生する。 コードは正常に実行され、メッセージボックスに「その他の成績です。」と表示される。 None 36. 次のコードは、指定したコントロールに移動しフォーカスのあるフィールド全体で「30」という文字列と一致するレコードを検索する処理である。 空欄に当てはまる最も適切な定数はどれか。以下の選択肢より1つ解答しなさい。 Sub Exam1() DoCmd.GoToControl "data3" DoCmd.FindRecord "30", 【 ① 】 MsgBox "完了" End Sub acAll acAnywhere acStart acEntire None 37. 以下のVBAコードは、Accessレポートのセクションが印刷プレビューされる際にデータを判別する処理を行うイベントのコードです。 空欄に当てはまる最も適切なイベント名を以下の選択肢より1つ解答しなさい。 Private Sub ページヘッダーセクション_【 ① 】(Cancel As Integer,FormatCount As Integer) Me.PrintSection = False MsgBox "設定完了" End Sub Layout Render Format Print None 38. フォーム上のボタンを押して変更されるプロパティの説明として正しいものはどれか。以下の選択肢より1つ解答しなさい。 Private Sub btn1_Click() With Me.txt1 .Value = "VBA" .ForeColor = vbRed End With End Sub フォームのタイトルと、その文字色が変更される。 テキストボックス「txt1」の値と、その背景色が変更される。 エラーが発生して何も変更されない。 テキストボックス「txt1」の値と、その文字色が変更される。 None 39. 以下コードを実行した際の結果として、最も適切なものはどれか。以下の選択肢より1つ解答しなさい。 ただし、Accessデータベース内に「Table1」というテーブルが存在し、C:¥Temp¥フォルダが事前に作成されているものとします。 Sub Exam1() DoCmd.TransferSpreadsheet acExport, , "Table1", "C:¥Temp¥Table1.xlsx", True MsgBox "完了" End Sub コードの実行時にコンパイルエラーが発生するものである。 C:¥Temp¥Table1.xlsxのExcelファイルの内容が、Accessデータベースの「Table1」テーブルにインポートされるものである。 C:¥Temp¥フォルダが存在しないため、実行時エラーが発生するものである。 Accessデータベース内の「Table1」テーブルが、C:¥Temp¥Table1.xlsxとしてExcelファイルにエクスポートされるものである。 None 40. 以下のコードはフォームに配置された「btn1」ボタンをクリックして、フォームのソース(参照元)を設定するコードである。 空欄に当てはまる最も適切なプロパティ名はどれか。以下の選択肢より1つ解答しなさい。 なおAccessフォームモジュールに記述されていると仮定する。 Private Sub btn1_Click() Me.【 ① 】 = "Product Master2" MsgBox "フォームのレコードソースがProduct Master2に変更されました。" End Sub Name RowSource RecordSource Caption None