Mauvaise syntaxe?

Salut a tous, dans ma formule si la cellule contient un espace, (donc parti droite de ma formule), excel me renvoi "#valeur!". C'est bete mais je ne trouve pas la raison.

=SI(TROUVE(",";LC14);DROITE(LC14;NBCAR(LC14)-TROUVE(",";LC14));DROITE(LC14;NBCAR(LC14)-TROUVE(" ";LC14)))

Bonjour

D'après ce que je comprend

Essayes

=SI(ESTNUM(TROUVE(",";$N18));DROITE($N18;NBCAR($N18)-TROUVE(",";$N18));DROITE($N18;NBCAR($N18)-TROUVE(" ";$N18)))

La même formule avec Style de référence L1C1

=SI(ESTNUM(TROUVE(",";LC14));DROITE(LC14;NBCAR(LC14)-TROUVE(",";LC14));DROITE(LC14;NBCAR(LC14)-TROUVE(" ";LC14)))

Cool, ca marche. Un gros merci!

P.S. quel est le role de estnum, pourquoi ca ne marchais pas sans ca?

Salut le forum

TROUVE recherche une chaîne de texte au sein d'une seconde chaîne de texte

et renvoie le numéro de la position, si rien n'est trouvé retourne #Valeur.

On vérifie donc avec ESTNUM si la valeur retournée est un chiffre. (VRAI sinon FAUX)

Mytå

Bonjour

je n'aurais pas dit mieux

Je rajoute seulement qu'excel, lorsqu'il évalue la formule, effectue seulement le test TROUVE(",";LC14) et c'est lui qui te retourne #VALEUR lorsqu'il ne trouve pas la virgule

Tu peux t'en rendre compte qu'il n'effectue que ce test car dans le cas ou il y une virgule il n'évalue la 2ème condition DROITE(LC14;NBCAR(LC14)-TROUVE(" ";LC14)) qui normalement, pris indépendant, retourne une erreur #VALEUR

Je suis content de voir qu'il y a de la logique dans tout ca. Merci a vous deux!

Rechercher des sujets similaires à "mauvaise syntaxe"