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 !

chrisdu73

XLDnaute Occasionnel
Bonjour,
j'aurai juste une question concernant le nombre de fois que l'on peut utiliser "criteria" avec des OR sur une même ligne ?
Ou alors peut on faire appel à une variable ?

Merci d'avance pour une reponse
 
Re : CRITERIA(x)...

Bonjour
Tu es limité par le nombre de caractères dans la formule, pas par le nombre d'arguments en tant que tels.
Si tes arguments sont
=si(ou(A1="là un texte très très long";A1="un autre texte très très long";....
tu seras beaucou plus vite limité qu'avec un
si(ou(A1=1, A1=34, A1=-12...)
 
Re : CRITERIA(x)...

Bonjour, salut Misange,

Avec un exemple concret il est toujours plus facile de montrer comment contourner certaines limites.

A titre d'exemple :
Pour la fonction OU, il est possible de l'écrire comme ceci : =SI(OU(A1={1;34;-12}); ...
Pour les conditions, il est possible de les nommer (menu Insertion, ...) : =SI(OU(A1={texte1;texte2;texte3}); ...
 
Re : CRITERIA(x)...

Tout à fait d'ac Hoerwind. Je crois d'ailleurs que j'avais signalé cette écriture il n'y a pas très longtemps. Ce que je voulais souligner c'est que la limite restera toujours la longueur de la formule en entier et pas le nb d'arguments ou. Avec l'écriture matricielle si les textes sont longs, on gagne un peu mais ça peut être seulement marginal.
 
Re : CRITERIA(x)...

merci a tout les deux pour votre aide, en faite mon problème est avec ce code, j'aurai voulu savoir s'il était possible de mettre mes critères de sélection dans une variable qui se trouverai sur une feuille dans un autre fichier et sur un lecteur différent?
exemple "C:\ paramétrage.xls" en "Feuil1", et mes critères sont en colonne de C2 à C20
alors comment écrire la ligne de code ?

Sheets("Import").Select
Range("A1").Select
Selection.AutoFilter
ActiveSheet.Range("$A$1:$H$263").AutoFilter Field:=2, Criteria1:=Array("BD", "001", "005", "RE", "RS"), Operator:=xlFilterValues
With ActiveWindow
End With
Cells.Select
Selection.Copy
Sheets.Add After:=Sheets(Sheets.Count)
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
Sheets(Sheets.Count).Name = "IMP04"
 
Re : CRITERIA(x)...

Bonjour chrisdu73, salut Misange, hoerwind,

Vous avez raison, il faut utiliser le filtre élaboré (avancé).

Faites le fonctionner manuellement en utilisant l'enregistreur de macro, vous verrez le bon code...

La formule =OU(...;...) est à entrer dans la zone de critères [Edit] c'est à dire dans la feuille de calcul.

A+
 
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
107
Réponses
23
Affichages
679
Réponses
12
Affichages
358
Réponses
5
Affichages
183
Réponses
18
Affichages
607
Retour