Sinsitrus
Messages postés855Date d'inscriptionsamedi 11 juin 2005StatutMembreDernière intervention21 août 2015
-
4 janv. 2008 à 12:29
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018
-
14 juin 2015 à 06:55
Bonjour a tous et bonne année 2008
J'ai besoin d'aide svp. J'ai besoin de faire un calcul dans un textbox mais qui prendras en compte les virgules, comment je peux le faire ?
J'ai essayé le bouton JLFNumber mais cette commande ne passe pas :
Private Sub Timer1_Timer()
T_Total = Val(T_MontantDevise * T_Taux)
End Sub
Le newbie
Messages postés200Date d'inscriptionmardi 17 octobre 2006StatutMembreDernière intervention24 mars 20122 4 janv. 2008 à 13:03
Salut, il faut que tes variables soient de type double.
Ensuite tu vas avoir une erreur sur la conversion de type (cast de la chaîne en type double ou un truc comme ça. Donc il faut convertir. Voici comment passer du double au string :
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 4 janv. 2008 à 13:21
" ...VB travaille avec le point comme séparateur décimal..."
Cela dépend des fonction utilisées, certaines ne comprennent que le point, d'autres ne comprennent que le séparateur définie dans les paramètres régionnaux de windows.
---- Sevyc64 (alias Casy) ----# LE PARTAGE EST NOTRE FORCE #
Pourquoi meilleur ? C’est tout simplement parce que l’utilisateur peut alors rentrer les nombres comme il veut, soit avec le point, soit avec la virgule, contrairement aux solutions précédentes qui impose à l’utilisateur d’utiliser que la virgule.
Pour Casy, si on calcul avec un type défini par Double (Dim machin As Double), tous les calculs internes à VB6 (VBA) sont avec le point comme séparateur... Sinon, je suis intéressé de connaître un contre exemple...
Espérons que pour VB2005, cela soit la même chose...
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 4 janv. 2008 à 14:03
"...si on calcul avec un type défini par Double (Dim machin As Double),
tous les calculs internes à VB6 (VBA) sont avec le point comme
séparateur..."
Le point (comme la virgule d'ailleurs) n'a absolument aucune signification sur un type double. Tout les calculs internes sont fait en double.
On ne peut parler de séparateur décimal que sur la représentation textuelle du nombre.
Sur le nombre lui-même, il n'existe pas de notion de séparateur décimal.
Heureusement, car sinon il existerait des problèmes de traitement des nombres lorsqu'on change de pays.
Pour rappel, un nombre Double, quelque soit sa valeur est toujours formé par une mantisse et un exposant : mantisse E exp avec la mantisse toujours de la forme 0,xxxxxxxxx
PS : Il est très habituel en programmation, de confondre une valeur et sa représentation textuelle car c'est souvent effectivement la seule visualisation que l'on en a. Mais il faut garder à l'esprit que ce que l'on voit de la valeur, n'est qu'une représentation, et comme toute représentation, sujet à interprétation.
---- Sevyc64 (alias Casy) ----# LE PARTAGE EST NOTRE FORCE #