XL 2013 Addition de label avec decimal

Dennnisss

XLDnaute Occasionnel
Bonjour
Moi ma question ou mon dilemme est j’additionne un ou plusieurs label mais je parviens pas a faire afficher le résultats avec les décimales ils semble pourtant faire le calcul correct mais pas l'affichage
J'ai tenter avec cette logique
Private Function fmt(nb#) As String
fmt = Format(nb, "0.00")
End Function

Mais il affiche des zeros seulement
j'ai essayer cette méthode
Dim varLabel508 as double
varLabel508 = Format(varLabel508 , "###,0#")

alors j'aurais besoin de vous
pour vous situé prendre label 405 + label 406 + label 407 que vous trouverai dans la section du mois de mars ,,,, vous allé vous rendre compte qu'il additionne bien les dizaine et les centième et pas les décimales
merci a vous et bonne soirée :)






 

Pièces jointes

  • Classeur2.xls
    139.5 KB · Affichages: 18

Dranreb

XLDnaute Barbatruc
Bonsoir.
Je soupçonne un mélange d'emplois de functions qui assument soit le point soit la virgule comme séparateur décimal. CDbl et Format c'est la virgule sur un Excel français, Val et Str c'est toujours le point.
 

Dennnisss

XLDnaute Occasionnel
Bonsoir Mrs Barbatruc ,,,, non effectivement sur ce user il a aucune entrée les entrées se font a partir d'un autre user que je n'ai pas joint ,,, sur ce user se sont juste affichage de statistique et qui compare aussi avec les années précédantes ,,,, alors bonne nuit a toi merci dennnisss
 

soan

XLDnaute Barbatruc
Inactif
Bonjour Dennnisss, Dranreb, le fil,

je pense que la solution de Dranreb avec CDbl() est une très bonne solution ; aussi, c'est juste pour info que je t'en indique une autre, avec Val(), et cela même si elle est plus longue ; utiliser par exemple :

Val(Replace$(TextBox1, "," ,"."))

rappel : le signe « $ » fait que ça retourne une donnée de type String plutôt qu'une donnée de type Variant.



@Dranreb : est-ce que c'est interchangeable et que les deux donnent à chaque fois les mêmes résultats ? ou penses-tu qu'il peut y avoir parfois des différences ? et peut-être (mais j'ai pas essayé) : un peu comme entre Int() et Fix() en cas de nombres négatifs ? (quoique « à priori », y'a pas d'arrondi puisque c'est en double précision) ; si y'a tout l'temps aucune différence entre les deux, alors effectivement CDbl() vaut plus le coup puisque c'est moins long que mon Val(Replace$(...)).​

soan
 

Dranreb

XLDnaute Barbatruc
Il y a toutefois un inconvénient de CDbl que n'a pas Val: Il plante si la TextBox n'est pas numérique. Val rend 0.
Mais bon, on peut le tester If IsNumeric(TextBox1.Text) then T(1, x) = CDbl(TextBox1.Text) Else T(1, x) = Empty
 

Statistiques des forums

Discussions
312 223
Messages
2 086 407
Membres
103 201
dernier inscrit
centrale vet