Bon j'ai trouvé sauf que j'ai maintenant un autre problème :
En fait j'ai plusieurs champs de recherche c'est à dire a6, b6 et c6
Voici le code :
Private Sub Worksheet_Change(ByVal Target As Range)
'Commande
If Not Application.Intersect(Target, Range("a6")) Is Nothing Then
If Target.Count > 1 Then Exit Sub
If Range("a6") = "vide" Then
Range("a6").Value = "="
Range("a8:af15000").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
Range("a5:a6"), Unique:=False
Else
Range("a8:af15000").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
Range("a5:a6"), Unique:=False
End If
End If
'Date
If Not Application.Intersect(Target, Range("b6")) Is Nothing Then
If Target.Count > 1 Then Exit Sub
If Range("b6") = "vide" Then
Range("b6").Value = "="
Range("a8:af15000").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
Range("b5:b6"), Unique:=False
Else
Range("a8:af15000").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
Range("b5:b6"), Unique:=False
End If
End If
'Fournisseur
If Not Application.Intersect(Target, Range("c6")) Is Nothing Then
If Target.Count > 1 Then Exit Sub
If Range("c6") = "vide" Then
Range("c6").Value = "="
Range("a8:af15000").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
Range("c5:c6"), Unique:=False
Else
Range("a8:af15000").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
Range("c5:c6"), Unique:=False
End If
End If
End sub
Le problème c'est qu'il ne cumule pas les filtre en gros si je mets vide en a6 puis toto en c6 alors il applique uniquement toto comme filtre.
Moi je voudrais que le filtre soit vide pour la colonne a et toto pour la colonne c.
Est ce que quelqu'un peut m'aider ?
Merci
Nini