Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Condition IF avec filtre auto pour filtre multicriteres

  • Initiateur de la discussion Initiateur de la discussion Payou
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Payou

XLDnaute Occasionnel
Bonjour a tous,

Voila mon probleme. J'aimerais faire un filtre multi critere, mais celui ci ne fonctionne pas (ligne orange).

Je vous mets le code:

Code:
If Model <> "" Then
[COLOR="DarkOrange"]If BatchNumber And Productcode = "" Then[/COLOR]
Unfilter
Sheets("Data base").Range("A8").AutoFilter 4, Model
Sheets("research").Range("D7:D9").ClearContents
Else
Sheets("Data base").Range("A8").AutoFilter 4, Model
Sheets("research").Range("D7:D9").ClearContents
End If
End if

Donc en mots ca veux dire: Si la case model est remplie et qu'une autre des deux cases de recherches est rempli, alors il filtre aussi selon l'autre critère, sachant que j'ai encore 2 fois la même formule pour les deux autres critères et que ce ci se suivent dans le reste de ma formule. Mais si jamais les deux autres critères de recherches sont vides alors il unfiltre la feuille pour être sur, puis la refiltre.

En espérant avoir été compréhensible (j'ai un vieux doute).

Merci de vos réponses 🙂

P.S: Si vous avez besoin de tout le code je peux le mettre, mais c'est pour pas alourdir le post 😀
 
Dernière édition:
Re : Condition IF avec filtre auto pour filtre multicriteres

Bonjour,

Il faut l'écrire comme ceci :

If BatchNumber = "" And Productcode = "" Then


Pas tres bien compris ce que fait ton code mais là tu fais 2 fois la meme chose ...
Tu peux l'écrire comme ceci :

If Model <> "" Then
If BatchNumber = "" And ProductCode = "" Then Unfilter
Sheets("Data base").Range("A8").AutoFilter 4, Model
Sheets("research").Range("D7😀9").ClearContents
End If
 
Dernière édition:
Re : Condition IF avec filtre auto pour filtre multicriteres

Re Catrice,

Juste par rapport a ton dernier post, c'est pas pareil, toute la difference est censée résider dans le "Else". Car en fait j'aimerais que si plusieurs champs de tri sont remplis, alors il me fait un premier tri, ici par model, mais dans la suite de mon code j'ai le même code, avec a la place de model "batchnumber" par exemple. Et donc qu'il continue sont tri, et filtre cette fois-ci la feuille par batchnumber. Dans le cas ou les autres critères de sélection seraient vide, alors, il me defiltre la page, pour être sur que toutes les données sont la, et me la refiltre avec mes infos.]

Ai-je été plus compréhensible sur ce coup la?

Peut être avec le code complet ce sera plus parlant, je prépare un fichier exemple également dans le doute.
 

Pièces jointes

Dernière édition:
Re : Condition IF avec filtre auto pour filtre multicriteres

AAAAAaaaaah, ne me laisser pas tomber dans les fins fonds du forum, j'implore votre attention, et votre aide dans la mesure de votre savoir 😀
 
Re : Condition IF avec filtre auto pour filtre multicriteres

C'est gentil Catrice, mais je viens de résoudre mon problème. C'était juste un probleme de syntaxe... Voila de que je devais mettre en fait pour ce que ça pourrait intéresser:
Code:
Sub Research()

Dim W As Worksheet
Dim BatchNumber$
Dim Model$
Dim Productcode$
Set W = Sheets("Research")
BatchNumber = W.[D7].Text
Model = W.[D8].Text
Productcode = W.[D9].Text

If Model <> "" Then
If BatchNumber [COLOR="Red"]<> ""[/COLOR] Or Productcode <> "" Then
Sheets("Data base").Range("A8").AutoFilter 4, Model
W.Range("D8").ClearContents
Else
Unfilter
Sheets("Data base").Range("A8").AutoFilter 4, Model
W.Range("D8").ClearContents
End If
End If

If BatchNumber <> "" Then
If Model [COLOR="Red"]<> ""[/COLOR] Or Productcode <> "" Then
Sheets("Data base").Range("A8").AutoFilter 9, BatchNumber
W.Range("D7").ClearContents
Else
Unfilter
Sheets("Data base").Range("A8").AutoFilter 4, Model
W.Range("D7").ClearContents
End If
End If

End Sub

On rajoute ainsi autant de filtres que l'on veut. Ce code permet de faire un multifiltre pour être plus précis dans la recherche.
Ainsi si plusieurs des cases de recherches sont remplies, le filtre fera un tri en fonction du premier critère, puis du second etc, mais ne fera qu'un tri dans le cas ou un seul des critères sera remplis.

Ainsi même si plusieurs modèles existent, on peut approfondir la sélection, en utilisant son numéro de suivi ou autre.
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
405
Réponses
2
Affichages
819
Réponses
1
Affichages
1 K
Réponses
6
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…