回答編集履歴

1

追記

2021/09/24 03:48

投稿

jinoji
jinoji

スコア4592

test CHANGED
@@ -1,3 +1,31 @@
1
1
  Forループの中でWorksheetの数が増えるからだと思います。
2
2
 
3
3
  Addの追加先をWorksheet.CountのAfterにするとかすればどうでしょう。
4
+
5
+
6
+
7
+ ```VBA
8
+
9
+ Dim ws As Worksheet
10
+
11
+ For Each ws In Worksheets
12
+
13
+ If ws.Name Like "*2021*" Then
14
+
15
+ With ws.Range("A1")
16
+
17
+ .AutoFilter 9, "東京"
18
+
19
+ .CurrentRegion.Copy Worksheets.Add(After:=Worksheets(Worksheets.Count)).Range("A1")
20
+
21
+ .AutoFilter
22
+
23
+ End With
24
+
25
+ End If
26
+
27
+ Next
28
+
29
+
30
+
31
+ ```