Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2019 Mise en forme conditionnelle utilisant le résultat d'une fonction GAUCHE ou STXT

Nicokasawa

XLDnaute Nouveau
Bonjour,

Je bloque actuellement sur une mise en forme conditionnelle qui me paraissait toute bête mais impossible pour moi de mettre le doigt sur le problème.

  • Je possède une fourchette de chiffres (1,050 - 1,080) au format standard dans une seule cellule.
  • J'extrait la partie gauche de cette cellule avec la fonction GAUCHE et récupère donc 1,050 que j'affiche dans une nouvelle cellule.
  • Je rentre un chiffre dans une troisième cellule et si ce chiffre est inférieur à 1,050, ma mise en forme conditionnelle remplira cette troisième cellule en rouge pour m'avertir que je suis en dessous.
Impossible d'avoir un affichage correcte de la mise en forme conditionnelle. La troisième cellule sera toujours rouge, quoi que je rentre.
Par contre, si dans ma mise en forme conditionnelle je fais référence à une cellule où j'ai moi même rentré "1,050" cela fonctionne, mais pas avec le résultat d'une fonction.
Je ne sais pas d'où cela peut venir.

Merci d'avance pour votre aide.
 

Pièces jointes

  • test remplissage fourchette.xlsx
    10.3 KB · Affichages: 14
Solution
Bonjour Nicokasawa,
En F5 vous avez un texte, en F1 la fonction Gauche vous renvoie ... un texte, même si cette chaine est composée de chiffres. Pour XL le nombre 123 n'est pas égal à la chaine "123". Donc la MFC ne peut pas marcher.
Mais on peut demander à XL de transformer ( dans la mesure du possible ) une chaine en nombre avec CNUM.
Donc si en F11 vous mettez :
VB:
=CNUM(GAUCHE(F5;5))
alors ça marche. Avec 1 I5 est rouge, avec 2 I5 est blanc.

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Nicokasawa,
En F5 vous avez un texte, en F1 la fonction Gauche vous renvoie ... un texte, même si cette chaine est composée de chiffres. Pour XL le nombre 123 n'est pas égal à la chaine "123". Donc la MFC ne peut pas marcher.
Mais on peut demander à XL de transformer ( dans la mesure du possible ) une chaine en nombre avec CNUM.
Donc si en F11 vous mettez :
VB:
=CNUM(GAUCHE(F5;5))
alors ça marche. Avec 1 I5 est rouge, avec 2 I5 est blanc.
 

Pièces jointes

  • test remplissage fourchette.xlsx
    9.6 KB · Affichages: 7

chris

XLDnaute Barbatruc
Bonjour

Une partie de texte est un texte pas un nombre donc ne peut être évalué correctement

Il faut utiliser dans ta formule
VB:
=GAUCHE(F5;5)*1
pour convertir en numérique
 

Nicokasawa

XLDnaute Nouveau
Super, merci à tous pour vos réponses, ça marche !

Je me disais bien qu'il y a avait un problème de format quelque part mais je ne n'avais pas la bonne fonction.
J'ai utilisé la fonction CNUM du coup.
Le forçage de conversion avec "*1" ou "--" est particulièrement intéressant, je ne l'aurais pas soupçonné.

Merci beaucoup et bonne journée à tous !
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…