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