Formule Excel à modifier. Contrôler les "OU"
Résolu
BILLING
Messages postés
162
Date d'inscription
Statut
Membre
Dernière intervention
-
via55 Messages postés 14512 Date d'inscription Statut Membre Dernière intervention -
via55 Messages postés 14512 Date d'inscription Statut Membre Dernière intervention -
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 :-)
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:
- Formule Excel à modifier. Contrôler les "OU"
- Modifier liste déroulante excel - Guide
- Formule excel si ou - Guide
- Modifier dns - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Formule somme excel colonne - Guide
2 réponses
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
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
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?
Ç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?
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
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