問題一覧
1
指定した並べ替え条件を実行したい。 画像に続くコードを記入し、マクロを完成させよ。 ■ End With
.Apply
2
"C:¥Test"フォルダ下に"2024"というフォルダを作成したい。 ■に適切なコードを記入しマクロを完成させよ。 ■ "C:¥Test¥2024"
MkDir
3
Do…Loopステートメントを終了させたい。 ■と□に適切なコードを入力し、マクロを完成させよ。 Sub Macro() 省略〜 Do While i < 5 i = i + 1 A = A + .Cells(i, 1) If A < 50 Then 〜処理〜 Else ■ End If □ 〜省略 End Sub
Exit Do, Loop
4
4
5
「C:¥VBAエキスパート¥演習問題.xlsx」を同フォルダ内の「回答済」フォルダに「演習問題(2024年).xlsx」としてコピーしたい。 ■に適切なコードを記入しマクロを完成させよ。 ■ "C:¥VBAエキスパート¥演習問題.xlsx", "C:¥VBAエキスパート¥回答済¥演習問題(2024年).xlsx"
FileCopy
6
配列Aに格納されている値の合計値を表示させたい。 ■と□に適切なコードを入力せよ。 Dim A As Variant, N As ■, S As Long 省略〜 'A列のある範囲には数値が入力されていると仮定 '配列Aにその範囲の値を格納 〜省略 For Each N In A S = S + □ Next N MsgBox S
Variant, N
7
オートフィルターで絞り込んだあとの結果をSheets2のセルA1へコピーしたい。 ■に適切なコードを記入し、マクロを完成させよ。 〜省略(絞り込み指示) Range("A1").■.Copy Sheets("Sheet2").Range("A1")
CurrentRegion
8
MsgBoxに"ABCD"と表示させたい。 ■と□に適切な文字を入力せよ。 Dim A As Variant, i As Long A = Split("A-B-C", "-") ReDim ■ A(□) A(□) = "D" For i = 0 To UBound(A) MsgBox A(i) Next i
Preserve, 3
9
1
10
下記マクロを実行したとき、メッセージボックスには何も表示されなかった。 Sampleの結果を表示させるにはNext iのあとにどのようなコードを入れれば良いか。 ■に不足部分を補いなさい。
Sample = A
11
A1セルに入力された数値を繰り返し加算し、変数Aに格納するマクロを作成したい。 ループ条件は合計が100未満のとき。 ★、☆部分は以下に書き換えられる。 ■、□、◆に入る適切なコードを記入せよ。 ★の書き換え:■ A < 100 □ ☆の書き換え:◆ Dim A As Long ★Do While A < 100 A = A + .Range("A1") ☆Loop
If, Then, End If
12
選択中セルの値を10倍にしたい。 ■と□に適切なコードを入力せよ。 Dim A As ■ For Each A □ A = A * 10 Next A
Range, In Selection
13
For…Nextステートメントを終了させたい。 ■に適切なコードを入力せよ。 Sub Macro() 省略〜 For i = 1 To 100 If … Then 〜処理〜 Else ■ End If Next i 〜省略 End Sub
Exit For
14
"-"で区切られた文字を取得したい。 ■に適切な文字を入力せよ。 Dim A As Variant A = ■("A-B-C", "-")
Split
15
3
16
A列中の"佐々木"と入力されているセルを特定し、変数Aに格納した。 このセルを含む3列右隣までをコピーし、E1セルを先頭に貼り付けたい。 ■に適切なコードを記入しマクロを完成させよ。 A.■(1, 3). Copy Range("E1")
Resize
17
4
18
見出し行の「数値」を指定したい。 ■に適切なコードを記入し、マクロを完成させよ。 Range("A1").ListObject.■
Range(4)
19
20
20
図中のテーブルの名前は「テーブル1」と特定できた。 見出し行を含む名前の列をコピーしたい。 ■と□に適切なコードを記入し、マクロを完成させよ。 Range("テーブル1[■],[□]").Copy
#All, 名前
21
次のテーブルの日付行を実データのみコピーしたい。 ■に適切なコードを記入し、マクロを完成させよ。 Range("A1").ListObject.■.Copy
ListColnmns(1).DataBodyRange
22
10
23
Sub Macro1() Dim i As Long, SUM As Long For i = 1 To 10 If Cells(i, 2) > 50 Then If Cells(i, 1) = "A" Then SUM = SUM + Cells(i, 2).Value End If If Cells(i, 1) = "D" Then SUM = SUM + Cells(i, 2).Value End If Else If Cells(i, 1) = "B" Then SUM = SUM + Cells(i, 2).Value End If If Cells(i, 1) = "C" Then SUM = SUM + Cells(i, 2).Value End If End If Next i MsgBox SUM End Sub
200
24
テーブルの見出し行のみをコピーしたい。 ■に適切なコードを記入し、マクロを完成させよ。 Range("A1").ListObject.■.Copy
HeaderRowRange
25
■に適切なコードを記入し、以下の処理をするマクロを完成させよ。 変数Aが1,3,5,7,9なら処理①、2,4,6,8なら処理②、 それ以外なら処理③をする。 Select Case A Case 1,3,5,7,9 処理① Case 2,4,6,8 処理② ■ 処理③ End Select
Case Else
26
Set A, Set B
27
図中のテーブルの名前は「テーブル1」と特定できた。 見出し行を含まない実データをコピーしたい。 ■に適切なコードを記入し、マクロを完成させよ。 Range("テーブル1■").Copy
[#Data]
28
次のコードは、イミディエイトウィンドウに変数Aの値を出力させるコードである。■に入る適切な語句を回答せよ。 Debug.■ A
29
エラー
30
A1セルには任意の年数4桁、B1セルには月数、C1セルには日数が入力されている。 これらから日付を作り、D1セルに出力させたい。 ■に適切なコードを記入し、マクロを完成させよ。 Range("D1") = WorksheetFunction.■(Range("A1"), Range("B1"), Range("C1"))
DateSerial
31
Resume, Next
32
■に適切なコードを記入し、以下の処理をするマクロを完成させよ。 変数Aが10より小さければ処理①、10以上20以下なら処理②を実行する。 Select Case A Case ■ < 10 処理① Case ■ >= 20 処理② End Select
Is
33
次のマクロを実行したとき、メッセージボックスに80と表示された。 空欄に適切な語句を入れ、マクロを完成させよ。
While
34
配列Aに格納されたワードで絞り込みたい。 ■と□に適切なコードを記入し、マクロを完成させよ。 Dim A() As String A(0) = "佐々木" A(1) = "桜井" A(2) = "松本" Range("A1").■ 1, A, □
AutoFilter, xlFilterValues
35
A1セルに入力されている内容のふりがなを調べたい。 ■に適切なコードを記入し、マクロを完成させよ。 MsgBox Range("A1").■
Phonetic.Text
36
画像のように、A列の中で1〜3番目に大きい値をD列に表示させたい。 ■に適切なコードを記入しマクロを完成させよ。 With WorksheetFunction Range("D1") = .■(Range("A2:A6"), 1) Range("D2") = .■(Range("A2:A6"), 2) Range("D3") = .■(Range("A2:A6"), 3) End With
Large
37
Format
38
取得した要素を全て表示させたい。 ■と□に適切な文字を入力せよ。 Dim A As ■, i As Long A = Split("A-B-C…", "-") '格納したい文字はいくつ続いているかわからない For i = 0 To □(A) MsgBox A(i) Next i
Variant, UBound
39
図中のテーブルの名前は「テーブル1」と特定できた。 見出し行を含むテーブル全体をコピーしたい。 ■に適切なコードを記入し、マクロを完成させよ。 Range("テーブル1■").Copy
[#All]
40
次のテーブル内の囲み部分をコピーしたい。 ■に適切なコードを記入し、マクロを完成させよ。 Range("A1").ListObject.■.Copy
ListRows(3)
41
次のマクロを実行したとき、メッセージボックスに表示される値を回答せよ。
4
42
50
43
xlPinYin
44
A1セルには今日の日付が入力されている。 前月末の日付をB1に出力したいとき、■と□を補い、コードを完成させよ。 Range("B1") = WorksheetFunction.■(Range("A1"), □)
EoMonth, -1
45
見出し行を含まないテーブルデータ全体をコピーしたい。 ■に適切なコードを記入し、マクロを完成させよ。 Range("A1").ListObject.■.Copy
DataBodyRange