OVH Cloud OVH Cloud

Format de nombre

3 réponses
Avatar
cyril.dubois
Bonjour,

Je calcul une variable qui renvoie le nombre suivant : 14,5714285714286

Je voudrais afficher 14.571, comment faire ?

Merci

Cyril Dubois

3 réponses

Avatar
jacques thiery
ex
x=format$(maVar,"0.000")
attention ce résultat est une chaine
Cordialement
"cyril.dubois" a écrit dans le message de news:
cttqt0$ep3$
Bonjour,

Je calcul une variable qui renvoie le nombre suivant : 14,5714285714286

Je voudrais afficher 14.571, comment faire ?

Merci

Cyril Dubois




Avatar
Jean-Marc
"cyril.dubois" a écrit dans le message de
news:cttqt0$ep3$
Bonjour,

Je calcul une variable qui renvoie le nombre suivant : 14,5714285714286

Je voudrais afficher 14.571, comment faire ?



Hello,
l'instruction Round est une des solutions possibles:
Dim a As Double

a = 15.7835435486

Debug.Print Round(a, 3)

' ceci affiche 15,783

--
Jean-marc
"There are only 10 kind of people
those who understand binary and those who don't."
Avatar
Zoury
Salut!

l'instruction Round est une des solutions possibles:
a = 15.7835435486
Debug.Print Round(a, 3)
' ceci affiche 15,783



Le "problème" avec Round() c'est que la fonction arrondie le nombre selon
l'algorithme du "banking-rounding", qui est conçu pour arrondir la valeur au
nombre pair le plus près, ce qui peut jouer des tours si on ne s'attend pas
à ça..

ex :
'***
?Format$("0,5", "0")
1
?Format$("1,5", "0")
2
?Round("0,5", 0)
0
?Round("1,5", 0)
2
'***

--
Cordialement
Yanick
MVP pour Visual Basic