Detection Critere

Bonjour,

Je souhaite détecter lors du lancement d’une macro si un critère est sélectionné dans une des colonnes du filtre automatique.

J’arrive à détecter que le filtre automatique est activé mais je ne sais comment faire pour le critère.

Pour mieux comprendre: exemple dans le fichier ci-joint, je souhaite afficher un message si un critère est sélectionné dans la colonne Perle.

Merci pour votre aide

8detecfiltre.zip (10.99 Ko)

bonjour,

une proposition

Sub Ctrl_Filtre()
    If ActiveSheet.AutoFilterMode = True Then
        For i = 1 To ActiveSheet.AutoFilter.Filters.Count
            f = False
            If ActiveSheet.AutoFilter.Filters(i).On Then
                MsgBox "filtre actif sur champ " & i & " critère " & ActiveSheet.AutoFilter.Filters(i).Criteria1: f = True
            End If
        Next i
        If f = False Then MsgBox "AutoFiltre Activé, mais sans critère de sélection"
    Else
        MsgBox "Filtre Non Activé"
    End If
End Sub

Bonjour,

C'est exactement ce que je voulais et en mieux.

Je vous remercie beaucoup.

Cordialement.

Bonjour,

pour oter tous les critères de tous les filtres (comme demandé via mp

activesheet.showalldata

Bonjour,

J'avais trouvé la commande mais j'avais une erreur si pas de critères selectés.

Voilà ce que je viens de faire pour éviter cette erreur.

If ActiveSheet.AutoFilterMode = True Then

On Error Resume Next

ActiveSheet.ShowAllData

On Error GoTo 0

End If

Par contre je n'arrive pas à transcrire cette macro pour un tableau, la cde ShowAllData ne fonctionne pas.

Sub Raz_Filtre1()

'

' Raz_Filtre1 Macro

If ActiveSheet.ListObjects("Tableau1").ShowAutoFilter = True Then

On Error Resume Next

ActiveSheet.ListObjects("Tableau1").ShowAllData

On Error GoTo 0

End If

End Sub

Merci et bonne journée

Rechercher des sujets similaires à "detection critere"