【ランダム順出題】Excel VBA ベーシック 模擬試験 問題バンクから40問出題 Excel VBA ベーシック 模擬問題 模擬試験 2025.12.092026.01.10 【試験の形式について】 この試験は、多数の問題の中から毎回自動でランダムに出題される形式をとっています。 そのため、問題の出題順や選択肢の並び順は、受験のたびにシャッフルされます。 準備が整いましたら、ボタンを押して試験を開始してください。 1. __________,__________ クイックアクセスツールバー(QAT)ボタンについて説明した以下の選択肢のうち、正しいものを1つ解答しなさい。 QATにマクロを登録すると常にボタンが表示されるが、登録したマクロが記述されていないブックの時ボタンを押してもマクロの実行はできない。 登録したマクロが記述されていないブックの時に、マクロを登録したボタンは非表示にできない。 QATにマクロを登録後、QATに表示されるボタンの種類変更は可能である。 マクロが記述されているブックの時だけ、マクロが記述されたQATボタンを表示することができる。 None 2. __________,__________ マクロ記録について説明した以下の選択肢のうち、正しいものを1つ解答しなさい。 マクロの記録の終了は、表示タブ右側「マクロ」上部イラスト箇所をクリックするだけで可能である。 記録したマクロはブック内のユーザーモジュールに記録される。 記録の確認はVBEのプロジェクトエクスプローラからユーザーモジュールで確認できる。 マクロ記録の開始と終了は「マクロ」アイコン下部の文字部「マクロ」のあたりをクリックしないと実行できない。 マクロの記録開始は、表示タブ右側にある「マクロ」アイコン下部の文字部「マクロ」あたりをクリック後、「マクロの記録」を選択しマクロ記録のダイアログボックスで「OK」ボタンをクリックすると実行される。 None 3. __________,__________ VBEの起動やマクロの記録のショートカットキーに関する説明として、正しいものを選択肢から1つ解答しなさい。 VBEの起動はショートカットキーの「Alt」+「F9」キーで行うことができる。 マクロの記録ダイアログボックスのショートカットキーへは、Ctrlキーと半角小文字と半角大文字のアルファベットを登録できる。 マクロの記録ダイアログボックスのショートカットキーは、Ctrlキーと半角あるいは全角のアルファベットで登録できる。 VBEの起動は、ショートカットキーの「Alt」+「F10」キーで行うことができる。 None 4. __________,__________ コレクションについて説明した以下の選択肢のうち、誤っているものを1つ解答しなさい。 コレクションは、メンバーにアクセスするためにインデックス番号を使用し指定をすることができる。 コレクションは、WorkbooksやSheetsのように、オブジェクト名の原則複数形で表す。 コレクションは、必ず複数のメンバーを持っていなければならない。 コレクションは、メンバーが1つしかない場合でも使用することができる。 None 5. __________,__________ 次のコードは、1年後の日付をメッセージで表示するマクロである。 空欄に入る適切な語句を選択肢の中から一つ解答しなさい。 なお実行日はうるう年ではないものとする。 Sub Exam1() Dim A As Integer, B As Integer, C As Integer A = Year(Now) + 1 B = 【 ① 】(Now) C = 【 ② 】(Now) MsgBox “1年後は” & A & “年” & B & “月” & C & “日です。” End Sub ①Day ②Format ①Month ②Day ①Day ②Month ①Month ②Date None 6. __________,__________ 次のコードはブックへ変更した内容が保存されているかを判断し、メッセージを表示するマクロである。 未保存の場合は3行目の処理を、それ以外の場合は6行目の処理を行います。 空欄に入る適切な語句を、選択肢より1つ解答しなさい。 Sub Exam1() If ThisWorkbook.Saved= 【 ① 】 Then MsgBox “変更が未保存です。保存します。” ThisWorkbook.Save Else MsgBox “変更はありません。保存は不要です。” End If End Sub SaveChanges True False Protect None 7. __________,__________ 「=」など記号を使用した比較演算子が返す値に関する説明として、正しいものを一つ解答しなさい。 比較演算子は、2つの値を比較した結果が条件と同じときには、Like を返します。 比較演算子は、2つの値を比較した結果が条件と同じときには、True を返します。 比較演算子は、2つの値を比較した結果が条件と同じときには、 Match を返します。 比較演算子は、2つの値を比較した結果が条件と同じときには、= を返します。 None 8. __________,__________ マクロを登録した図等について解説した記述のうち、次の中から正しいものを1つ選択しなさい。 マクロを登録した図等の削除をするときは、選択してダブルクリックをすると表示されるメニューから「切り取り」で実行できる。 マクロを登録した図等の削除をするときは、選択して右クリックをし、表示されたメニューから「切り取り」で実行できる。 1つの図形に複数のマクロを登録はできないが、同様に同じマクロを登録した図等を、シート上に複数作成することはできない。 マクロを登録した図等などは大きさや色などを変更できない。 None 9. __________,__________ 次のコードは1列目をシートの一番下から上に進み、値がある最初のセル内をクリアにするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Cells(Rows.【 ① 】, 1).End(xlUp).ClearContents End Sub Count Counta Sum Clear None 10. __________,__________ VBEのコメントの書式設定について、次のうち誤っているものを選択肢より1つ解答しなさい。 コメントのフォントの色は変更できない。 コメントの前景と背景の色は変更できる。 コメントの設定はVBEの「ツール」メニューから「オプション」を実行し、エディターの設定タブより、「コメント」を選択するとフォント等について指定することができる。 コメントのフォント名は変更できる。 None 11. __________,__________ 以下のコードは、条件に合った時にはセル範囲をコピーするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() If Range(“A2”).Value =”January” Then Range(“A1”).CurrentRegion.Offset(1, 0).Resize(12).Copy Range(“F2”) End Sub 12. __________,__________ すでに保存がされているアクテイブ状態のブックに対して、次のコードを実行した場合どうなるか。 説明として正しいものを、選択肢から1つ解答しなさい。 *なお保存先に同じ名前のブックはないものとする。 Sub Exam1() ActiveWorkbook.Sheets(1).Range(“A1”) = “VBA” ActiveWorkbook.Close SaveChanges:=True, Filename:=”C:\User\Total.xlsx” End Sub 実行するとエラーとなった。 変更は保存せずブックを閉じた。 ファイルの内容の変更を保存しますか?」というメッセージが表示される。 変更を反映したブックを名前をつけて保存した。 None 13. __________,__________ 以下のマクロを実行したときに、最後にアクティブ状態のセルはどれか。選択肢より1つ解答しなさい。 Sub Exam1() Range(“A2”).Activate Range(“D2:E3”).Select Selection.Offset(2, 3).Select End Sub セルF4 セルG5 セルF5 セルG4 None 14. __________,__________ VBAの演算子に関する説明として、間違っているものを選択肢より一つ解答しなさい。 演算子には、算術演算子、比較演算子、論理演算子、代入演算子などの種類がある。 比較演算子は、値の比較を行う演算子であり、記号や文字にはIs、Like、=、、=、などがある。 演算子は数値を計算するための記号や文字であり、文字列の操作は行わない。 算術演算子は、数値の計算を行う演算子であり、算術演算子を表す記号や文字には+、-、*、/、\、^、Modなどがある。 None 15. __________,__________ 次のコードはセルA1を含む連続したひとかたまりのセル範囲に、行が何行あるかを調べるマクロである。 選択肢の中から空欄に入る正しいものを1つ解答しなさい。 Sub Exam1() Dim N As Integer N = Range(“A1”).【 ① 】.Rows.Count MsgBox N End Sub ActiveCell CurrentRegion Selection Select None 16. __________,__________ 複数の変数の宣言方法として正しいものはどれか、選択肢の中から2つ選びなさい。 Dim name As String, age As Integer Dim name As String And age As Integer Dim name, age As String, Integer Dim name As StringDim age As Integer 17. __________,__________ セル内の値を表す記述として間違っているものを、選択肢から1つ解答しなさい。 Range(“A1”) Cells(1, 1).Text Cells(1, 1).Value Range(“A1”).Value None 18. __________,__________ 以下のマクロの変数Aに0~100までの整数を格納したい。 空欄に入る適当なものを一つ選択肢から解答しなさい。 Sub Exam1() Dim A As 【 ① 】 A = 100 MsgBox A End Sub Byte Date String Boolean None 19. __________,__________ 次のコードは現在開いているブックが1つ、ブック上のシートが1枚のみの時に、シート上のセルA1に値を代入するマクロです。 コードの記述として、空欄に入る適切なものを選択肢の中から1つ解答しなさい Sub Exam1() 【 ① 】 End Sub WorkBooks(“1”).Sheet(“1”).Range(“A1”).Value = ”北海道” WorkBook(1).Sheets(1).Range(“A1”).Value = “北海道” WorkBook(1).Sheet(1).Range(“A1”).Value = “北海道” WorkBooks(1).Sheets(1).Range(“A1”).Value = “北海道” None 20. __________,__________ 次のコードは、メッセージボックスに「R7.10.23」と表示するマクロである。 空欄に入る値として正しいものを選択肢の中から1つ解答しなさい。 Sub Exam1() MsgBox Format(Range(“A2”), “【 ① 】.m.d”) End Sub g e gg ge None 21. __________,__________ VBEについて説明した以下の選択肢のうち、正しいものを1つ答えなさい。 VBEの起動はショートカットキーの「ALT」+「F11」を押すか、 開発タブにある「Visual Basic」アイコンをクリックすると実行される。 VBEの終了はVBEのウィンドウを閉じるか、Excelの終了と同時に行われる。 VBEの起動後、VBEとExcelの画面に相互に切り替えたい場合は、「ALT」+「F8」を押して切り替える。 VBEのコードウィンドウは、主にUserFormを作成するときに使用する。 VBEのプロジェクトエクスプローラは、マクロを記述する場所である。 None 22. __________,__________ 次のコードはタイトルを省略した文字入力可能なダイアログボックスを表示し、 ボックス内に初期値「VBA」を文字列として表示し、入力した値をメッセージで表示するマクロである。 空欄に入る適切な語句を選択肢より解答しなさい。 Sub Exam1() Dim N As String N = InputBox(“何か文字を入力してください。”, 【 ① 】【 ② 】) If N =”” Then MsgBox “キャンセルボタンあるいは空欄が入力されました。” Else MsgBox “入力値は” & N & ”です。” End If End Sub ①, ②”VBA” ①VBA ②, ①”VBA” ②, ①, ②VBA None 23. __________,__________ 次のマクロの内、メッセージボックスの左から2番目のボタンを押したときの戻り値が、「vbNo」となるコード2つを選択肢より解答しなさい。 Sub Exam1() Dim N As Long N = MsgBox “完了”, vbYesNoEnd Sub Sub Exam1() Dim N As Long N = MsgBox (“完了”, vbYesNo)End Sub Sub Exam1() Dim N As Long N = MsgBox (“完了”, vbYesNoCancel)End Sub Sub Exam1() Dim N As Long N = MsgBox (“完了”, vbRetryNoCancel)End Sub 24. __________,__________ 以下の選択肢のコードや、条件のときに実行すると「エラー」となるものを選択肢の中から1つ解答しなさい。 指定の場所にブックは未保存の状態で、ActiveWorkbook.SaveAs Filename:=”C:\User\Test.xlsx” のコードを2回実行した。保存時、保存場所に同名のファイル名はないものとする。 ActiveWorkbook.SaveAs Filename:=”C:\User\Test.xlsx”指定の場所にアクティブブックは未保存の状態で、本コードを実行した。保存時に保存先の場所に同名のファイル名はないものとする。 指定の場所にブックは未保存の状態で、ActiveWorkbook.SaveAs Filename:=”C:\User\Test.xlsx”のコードを2回、 実行後以下の「置き換えますか?」というメッセージがでて「いいえ」あるいは「キャンセル」ボタンを選択した。 ActiveWorkbook.Save…上書き保存を実行するアクティブブックは、一度保存済みである。 None 25. __________,__________ 以下のコードはシートのセルA1からセルA3までの文字列を、別のシートにコピーするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Dim i As Long With ActiveSheet .Range(“A1:C1”).Value = “VBA” .Range(“A1:C1”). Copy Sheets(”sheet2”).Range(“A1:C1”) End End Sub 26. __________,__________ VBAでセルを指定する際に使用する用語として、適切ではないものを選択肢から1つ解答しなさい。 Range Cell Cells ActiveCell None 27. __________,__________ 次のコードはセル内の文字列を検索し、指定した文字に置き換えてメッセージで表示するコードである。 空欄に入る適切な語句を選択肢より解答しなさい。 Sub Exam1() Dim N As String N=【 ① 】(Range(“A2”), “America”, “Asia”) MsgBox N End Sub StrConv Instr Mid Replace None 28. __________,__________ VBEのコメント機能について説明した以下の選択肢のうち、正しいものを1つ解答しなさい。 コメントを記述するときは、「‘」シングルコーテーションを入力し、以降右側に入力した文章は行の最後までコメントとして機能する。 「‘」シングルクォーテーションを使用しても、同じ行にコードがある場合は コメントとして機能しない。 複数行をまとめてコメントするには、コメントしたい行を選択し編集ツールバーの「コメントブロック」ボタンをクリックする。 コメントを解除したい場合は「コメントブロック」ボタン(図の赤丸)右側の「非コメント挿入ボタン」を押す。 コメント機能にはルールがあり、コメントを日本語や記号では記述できないことや、コメントの文字色の変更はできない。 None 29. __________,__________ VBAのオブジェクト式においてメソッドとは以下のどれか、正しいものを選択肢より1つ解答しなさい。 メソッドとは、オブジェクトの状態や様子を指定するものである。 メソッドとは、値を格納する入れ物である。 メソッドとは、マクロの動作を制御するものである。 メソッドとは、オブジェクトの動作やアクションの命令のことである。 None 30. __________,__________ 次のマクロを実行した結果、D列に代入される数値の合計として正しいものを、選択肢の中から1つ解答しなさい。 Sub Exam1() Dim i As Long For i = 2 To 11 If Cells(i, 1) = “Green” Then Cells(i, 4) = Cells(i, 3) * 3 If Cells(i, 2) = “warm” Then If Cells(i, 1) = “Brown” Then Cells(i, 4) = Cells(i, 3) /2 If Cells(i, 1) = “Yellow” Then Cells(i, 4) = Cells(i, 3) * 2 End If Next i End Sub 1950 1500 3450 0 None 31. __________,__________ 次のコードは表のA列をシートの一番下から上に進み、値がある最初のセル内をクリアにするマクロである。 空欄に入る適切な語句を解答しなさい。 Sub Exam1() Cells(Rows.Count, 1).End( ).ClearContents End Sub 32. __________,__________ 次のコードは実行するとセルの値が下図の時、戻り値は【 ① 】を返し、 変数Nに代入しメッセージで表示します。 空欄に入る適切な語句を選択肢より1つ解答しなさい。 Sub Exam1() Dim N As Variant N = IsNumeric(Range(“A2”).Value) MsgBox N End Sub Single False Double True None 33. __________,__________ 変数に日付を格納したい。この時の型指定文字として間違っているものを一つ解答しなさい。 Day Variant Date 何も指定しない None 34. __________,__________ 以下のマクロはB列が500より小さい場合、A列からC列までをE列に順にコピーするマクロである。 空欄を埋める適切なものを選択肢から1つ解答しなさい。 Sub Exam1() Dim i As Long, A As Long For i = 2 To 11 If Cells(i, 2) < 500 Then A = A+ 1 Range(Cells(i, 1), Cells(i, 3)).Copy 【 ① 】 End If Next i End Sub Range(A, i) Cells(5, A) Range(“A5”) Cells(A, 5) None 35. __________,__________ 次のコードはA列の各セルに入力されている半角文字列を、すべて全角文字列に変換しB列のセル内に代入するマクロである。 空欄に入る適切な語句を選択肢より解答しなさい。 Sub Exam1() Dim i As Long For i = 2 To 11 Cells(i, 2) = StrConv(Cells(i, 1),【 ① 】) Next i End Sub vbLowerCase vbUpperCase vbWide vbNarrow None 36. __________,__________ モジュールとマクロの関係に関する説明として、適切なものを一つ解答しなさい。 1つのモジュールに作成できるマクロの数は1つのみである。 1つのブックに作成できるモジュールは複数個可能である。 1つのブックに作成できるモジュールの数は1つまでである。 標準モジュールには、最大で50個のマクロを作成できる。 None 37. __________,__________ オブジェクトとオブジェクトが等しいかを比較する演算子を、以下の選択肢の中から1つ解答しなさい。 = As Is Like None 38. __________,__________ 次のコードは、変数Aをどのモジュールでも使用できるパブリック変数として宣言し、 変数Bは宣言したプロシージャで使えるようにするローカルレベル変数として宣言するマクロである。 空欄を埋める適切な語句を解答しなさい。 ————————————————— Module1 ————————————————— Option Explicit A As Integer Sub Exam1() B As String A = 300 B = “VBA” Call Exam2 MsgBox B End Sub Sub Exam2() Dim N As Integer N = A MsgBox N End Sub ——————————————- Module2 ——————————————- Option Explicit Sub Exam1() A = 100 MsgBox “Aの値は” & A & “です” End Sub 39. __________,__________ 以下の選択肢の中で最後までメッセージやウィンドウ等で止まることなく実行できるマクロはどれか。 選択肢の中から2つ解答しなさい。 Sub Exam1() Workbooks.Add ActiveWorkbook.Sheets(1).Range(“A1”) = “VBA” ActiveWorkBook.Close SaveChanges:=True End Sub Sub Exam1() WorkBooks.Add ActiveWorkbook.Sheets(1).Range(“A1”) = “VBA” ActiveWorkBook.CloseEnd Sub Sub Exam1() Workbooks.Add ActiveWorkbook.SaveAs Filename:=”C:\Users\Desktop\Total.xlsx” ActiveWorkbook.Sheets(1).Range(“A1”) = “VBA” ActiveWorkbook.Close SaveChanges:=TrueEnd Sub*保存するブックの保存先に、同じ名前のブックは存在しないものとする。 Sub Exam1() Workbooks.Add ActiveWorkbook.Sheets(1).Range(“A1”) = “VBA” ActiveWorkBook.Close SaveChanges:=FalseEnd Sub 40. __________,__________ VBAの行継続文字について、次のうち正しい説明を選択肢より1つ解答しなさい。 行継続文字は、”_”(アンダーバー)のみで構成される。 行継続文字は、コードを途中で改行したい位置にある単語や用語の間に挿入する。 行継続文字は、単語の途中で使用することができる。 行継続文字は、1行の中に何回でも使用することができる。 None