Utilisation de l'objet AutoFilter
Utilisez la propriété AutoFilter pour renvoyer l'objet AutoFilter. Utilisez la méthode Filters pour renvoyer une collection de filtres de colonne individuels. Utilisez la méthode Range pour renvoyer l'objet Range qui représente la plage entière filtrée. L'exemple suivant montre comment stocker les critères d'adresse et de filtrage pour le filtre en cours et comment appliquer de nouveaux filtres.
Dim w As Worksheet
Dim filterArray()
Dim currentFiltRange As String
Sub ChangeFilters()
Set w = Worksheets('Crew')
With w.AutoFilter
currentFiltRange = .Range.Address
With .Filters
ReDim filterArray(1 To .Count, 1 To 3)
For f = 1 To .Count
With .Item(f)
If .On Then
filterArray(f, 1) = .Criteria1
If .Operator Then
filterArray(f, 2) = .Operator
filterArray(f, 3) = .Criteria2
End If
End If
End With
Next
End With
End With
w.AutoFilterMode = False
w.Range('A1').AutoFilter field:=1, Criteria1:='S'
End Sub