Format Label [Nbre Décimale + Mise en forme]

nyco-

XLDnaute Junior
Bonjour,

J'espère ne pas poser une question déjà posée ici, j'ai regardé un petit peu mais je n'ai pas trouvé de réponse exacte.

J'ai crée un UserForm qui demande certaines informations à l'utilisateur. En fonction de ses choix, le calcul s'effectue dans une colonne cachée sur la feuille Excel. Le résultat obtenu s'affiche automatiquement dans un Label sur le formulaire.

Je souhaiterai deux choses ...

La première, c'est que les nombres qui s'affichent dans le Label ne soient pas arrondis. Je veux dire par là que si le résultat est 1.40, j'aimerai que le Label affiche exactement cette donnée (alors que là il affiche 1.4). J'avais trouvé une info sur le sujet pour une TextBox mais ça ne fonctionne pas pour un Label. Existe t-il un moyen de forcer le format pour qu'il s'affiche en 0.00 ?

La second correspond à la mise en forme de ce Label. Je souhaite qu'en fonction du résultat, la couleur du texte soit différente. En gros, vert si le résultat est inférieur ou égal à 0,50 et rouge pour tout ce qui est au dessus. Je n'ai pas trouvé le moyen d'agir sur la couleur du Label autrement qu'en modifiant les options de la zone (et là je ne peux choisir qu'une couleur). J'avais pensé faire 2 Label superposés avec un qui s'affiche (le vert par ex) quand l'autre est masqué (le rouge) en fonction du résultat. Mais bon ...

Voilà mes deux petits soucis ... Ce n'est peut-être pas faisable ou au contraire totalement basique mais je débute en VBA alors je ne suis pas vraiment doué ...

Merci d'avance pour vos réponses :D
 

nyco-

XLDnaute Junior
Re : Format Label [Nbre Décimale + Mise en forme]

Bonsoir pierrejean,

J'ai testé ta solution mais le code colore le fond du label (au lieu du texte).

Je vais me pencher sur ta solution comme base de réflexion et tenter de voir comment l'adapter.

Je repasse par ici dés que j'ai trouvé !

Merci :)
 

nyco-

XLDnaute Junior
Re : Format Label [Nbre Décimale + Mise en forme]

Re re re bonsoir !

Voilà, la solution est très légèrement modifiée, ça fonctionne chez moi, ça devrait fonctionner chez tout le monde si besoin.

Label7.Caption = Format(Range("E15"), "0.00")
If Range("E15") > 0.5 Then
Label7.ForeColor = RGB(255, 0, 0)
Else
Label7.ForeColor = RGB(0, 128, 0)
End If

Merci pierrejean pour la piste !
 

Discussions similaires

Statistiques des forums

Discussions
312 493
Messages
2 088 958
Membres
103 990
dernier inscrit
lamiadebz