回答編集履歴

1

追記

2020/04/05 05:14

投稿

mattuwan
mattuwan

スコア2136

test CHANGED
@@ -41,3 +41,65 @@
41
41
 
42
42
 
43
43
  とりあえず、とっ散らかっているこーどを纏めるとこんな感じですかね。
44
+
45
+
46
+
47
+ 1回の中でオートフィルターを設定して解除するようにしました。
48
+
49
+ ```ExcelVBA
50
+
51
+ Option Explicit
52
+
53
+
54
+
55
+ Sub test2()
56
+
57
+ Dim sKey As String
58
+
59
+
60
+
61
+ '抽出キーワードの取得
62
+
63
+ sKey = Sheets("集計").Range("H2").Text
64
+
65
+ 'オートフィルターでキーワードを含むデータを抽出し、I:J列をコピー
66
+
67
+ With Sheets("Data").Range("A1").CurrentRegion
68
+
69
+ .AutoFilter field:=1, Criteria1:=sKey
70
+
71
+ .Offset(1).Columns("I:J").Copy
72
+
73
+ End With
74
+
75
+ '集計シートの2列目の最後の行の下に貼付
76
+
77
+ With Sheets("集計").Range("A1").CurrentRegion
78
+
79
+ .Cells(.Rows.Count + 1, 2).PasteSpecial
80
+
81
+ End With
82
+
83
+ '1列目の空欄を検索したキーワードで埋める
84
+
85
+ Sheets("集計").Range("A1").CurrentRegion _
86
+
87
+ .Columns(1).SpecialCells(xlCellTypeBlanks).Value = sKey
88
+
89
+
90
+
91
+ 'オートフィルター解除
92
+
93
+ Sheets("Data").AutoFilter.Range.AutoFilter
94
+
95
+ End Sub
96
+
97
+ ```
98
+
99
+
100
+
101
+ 2回目ってH2セルを書き換えるんじゃないんですか?
102
+
103
+ 何回も実行したら、その都度どんどん結果が追記されると思いますが、
104
+
105
+ H2セルじゃなければどこなんでしょう?