Formule Excel à modifier. Contrôler les "OU"

Résolu/Fermé
BILLING Messages postés 162 Date d'inscription vendredi 4 mai 2012 Statut Membre Dernière intervention 31 mars 2021 - 13 févr. 2013 à 13:59
via55 Messages postés 14402 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 18 avril 2024 - 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 : https://www.cjoint.com/?3BnnVG08t61

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

Merci :-)






A voir également:

2 réponses

via55 Messages postés 14402 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 18 avril 2024 2 702
13 févr. 2013 à 14:26
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
0
BILLING Messages postés 162 Date d'inscription vendredi 4 mai 2012 Statut Membre Dernière intervention 31 mars 2021 48
13 févr. 2013 à 14:36
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?
0
via55 Messages postés 14402 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 18 avril 2024 2 702
13 févr. 2013 à 20:37
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
0