Объект Filters (Excel)
Коллекция объектов Filter , представляющая все фильтры в диапазоне с автофильтрованным фильтром.
Используйте свойство Filters объекта AutoFilter , чтобы вернуть коллекцию Filters . В следующем примере создается список, содержащий критерии и операторы для фильтров в диапазоне с автоматическим фильтрацией на листе Crew.
Dim f As Filter
Dim w As Worksheet
Const ns As String = "Not set"
Set w = Worksheets("Crew")
Set w2 = Worksheets("FilterData")
rw = 1
For Each f In w.AutoFilter.Filters
If f.On Then
c1 = Right(f.Criteria1, Len(f.Criteria1) - 1)
If f.Operator Then
op = f.Operator
c2 = Right(f.Criteria2, Len(f.Criteria2) - 1)
Else
op = ns
c2 = ns
End If
Else
c1 = ns
op = ns
c2 = ns
End If
w2.Cells(rw, 1) = c1
w2.Cells(rw, 2) = op
w2.Cells(rw, 3) = c2
rw = rw + 1
Next
Используйте фильтры (индекс), где индекс — это название или номер индекса фильтра, чтобы вернуть один объект Filter . В следующем примере задается переменная со значением свойства On фильтра для первого столбца в отфильтрованном диапазоне на листе Crew.
Set w = Worksheets("Crew")
If w.AutoFilterMode Then
filterIsOn = w.AutoFilter.Filters(1).On
End If
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.