Enlever le filtre automatique par VBA
Il faut distinguer 2 choses :
A ) les boutons du filtre automatique peuvent être affichés sur une feuille, que ce filtre soit en application ou non. Si tu veux détecter seulement la présence ou l'absence de ces boutons :
sub PrésenceDesBoutonsDuFiltre()
With Worksheets("Feuil5")
If .AutoFilterMode Then
MsgBox "Filtre auto. en application."
Else
MsgBox "Aucun filtre auto. en application."
End If
End With
end sub
B ) Si tu veux savoir si effectivement il y a un filtre en application sur la feuille:
sub FiltreAutoEnApplication()
Dim Rg As Range
On Error Resume Next
Set Rg = Worksheets("Feuil5").AutoFilter.Range
If Err = 0 Then
For Each C In Rg.Columns
'C.column représente la colonne où est
'appliquée le filtre auto.
If Me.AutoFilter.Filters(C.Column).On = True Then
MsgBox "Plage filtrée"
Exit For
End If
Next
Else
Err = 0
MsgBox "Aucun filtre en application"
End If
Set Rg = Nothing
end subAuteur : Denis Michon
Mots clefs associés à cette page : auto, automatique, filtre, vba, vbe
- Vous devez vous identifier ou créer un compte pour écrire des commentaires
