Formule Excel à modifier. Contrôler les "OU" [Résolu/Fermé]

Messages postés
161
Date d'inscription
vendredi 4 mai 2012
Statut
Membre
Dernière intervention
2 mars 2016
- - Dernière réponse : via55
Messages postés
10969
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
19 août 2019
- 13 févr. 2013 à 20:37
Bonjour,

J'ai la formule suivante qui semblait fonctionner jsuqu'à ce que je me rende compte d'une lacune. J'aimerais modifier:

=SI(OU($R3="WKBGE";$R3="DRDGE");"";SI(DROITE($R3;2)="DG";SI(ET(NON(ESTERREUR(TROUVE(GAUCHE($T3;2);"CAUS")));OU(GAUCHE($W3;2)=GAUCHE($T3;2);ET(DROITE($T3;4)<"7000";DROITE($W3;4)<"7000";NON(ESTERREUR(TROUVE(GAUCHE($W3;2);"CAUS"))))));"";"Erreur");SI(DROITE($R3;2)="GE";SI(ET(NON(ESTERREUR(TROUVE(GAUCHE($T3;2);"CAUS")));OU(GAUCHE($W3;2)=GAUCHE($T3;2);ET(GAUCHE($W3;2)<>GAUCHE($T3;2);DROITE($T3;4)<"7000";DROITE($W3;4)<"7000";NON(ESTERREUR(TROUVE(GAUCHE($W3;2);"CAUS"))))));"Erreur";"");"")))

Telle quelle, cette formule retourne "CA", "AU" ou "US" comme étant vrai. Mais ce n'est pas le résultat désiré. Seul "CA" et "US" peuvent être vrai. "AU" se retrouve comme 2 premières lettres des données en T ou en W mais ne doivent pas être considérées comme VRAI.

Comment dois-je modifier cette formule pour ne pas inclure "AU" ?

J'ai joint un fichier échantillon : http://cjoint.com/?3BnnVG08t61

N'hésitez pas à me contacter si vous avez besoin de plus d'info.

Merci :-)






Afficher la suite 

2 réponses

Messages postés
10969
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
19 août 2019
1371
0
Merci
Bonjour,

Comme je comprends ta formule cherche si les 2 premieres letres se retrouvent dans le texte CAUS c'est donc normal que US soit trouvé
Remplacer tous les CAUS par CA-US devrait régler le problème

A tester et me dire

Cdlmnt
Messages postés
161
Date d'inscription
vendredi 4 mai 2012
Statut
Membre
Dernière intervention
2 mars 2016
38
0
Merci
Bonjour via55,

Ça semble fonctionner. Merci.

C'est drôle j'aurais cru que le '-' serait considéré comme un caractère à trouver avec le CA et US. Peux-tu m'expliquer svp?
via55
Messages postés
10969
Date d'inscription
mercredi 16 janvier 2013
Statut
Membre
Dernière intervention
19 août 2019
1371 -
Re

oui le - est considéré comme un caractère et c'est justement ce qui permet de régler ton probleme
la formule cherchait si la chaine formée des2 premiers caractères d'un code est contenue dans CAUS , les combinaisons bonnes possibles étaient donc CA (2 prem de CAUS) AU (2 du mileu) et US (2 dernières) ce qui validait AU
Avec CA-US les bonnes combinaisons possibles sont CA, A-, -U et US, ce qui exclu donc AU

NB La recherche avec TROUVE est un peu lourde : SI(OU(GAUCHE(code;2)="CA";GAUCHE(code;2)="US")) aurait suffit pour vérifier si on trouvait US ou CA !

Bonne suite