Sub Filtrer_E()
    Filtre_Colonne [Designation], "Consommation", "A+*"
End Sub
Sub UnFiltrer_E()
    Filtre_Colonne [Designation], "Consommation"
End Sub
Sub Filtre_Colonne(Target As Range, Colonne, ParamArray Criteres() As Variant)
Dim List_Criteres   As Variant
Dim ID              As Variant
 
    If Target.ListObject Is Nothing Then
        If Not Target.Parent.AutoFilter Is Nothing Then Target.AutoFilter
        Set ID = Target.Rows(1).Find(Colonne)
    Else
        If Target.ListObject.AutoFilter.FilterMode Then Target.ListObject.AutoFilter.ShowAllData
        Set ID = Target.Rows(0).Find(Colonne)
    End If
  
    If Not ID Is Nothing Then ID = ID.Column - Target.Column + 1 Else ID = False
    If ID And UBound(Criteres) >= 0 Then
        List_Criteres = Criteres
        Target.AutoFilter Field:=ID, Operator:=xlFilterValues, Criteria1:=List_Criteres
    End If
 
    Set ID = Nothing
End Sub