Я пытаюсь отфильтровать один и тот же столбец под названием «Местоположение» из всех листов рабочей книги. Фильтр будет таким же, в этом случае выбрав «ABM», «AKH» и «ACH».
Столбец не находится на одной и той же позиции на всех листах.
Я пытался объединить некоторые коды, которые я нашел в Google, и это работало отдельно. Но в сочетании это работает только для одного листа. Я думаю, это как-то связано с тем, что «For» останавливается.
Sub AllSheetsAutofilter()
Dim p As Integer, q As Integer
p = Worksheets.Count
Dim i As Integer, rngData As Range
For q = 1 To p
With Worksheets(q)
Set rngData = Range("A1")
i = Application.WorksheetFunction.Match("Location", Range("A1:AZ1"), 0)
rngData.AutoFilter Field:=i, Criteria1:=Array("ABM", "AC8", "AKH", "ACH", "AC4"), Operator:=xlFilterValues
End With
Next q
End Sub