Molenn
Messages postés797Date d'inscriptionmardi 7 juin 2005StatutMembreDernière intervention23 février 20117 28 juil. 2006 à 13:08
Je ne connais pas vraiment la fonction format, mais je suis étonné par ton format de toutes façons puisque tu marques Format(total.tostring,"#.##0.00").
Ca veut dire que tu tentes de convertir ton chiffre à virgule par un chiffre avec le point comme séparateur.
Si tes paramètres régionaux sont français, ça risque de poser pbs dans les calculs non ? Moi j'aurais fait l'inverse, j'aurai tenté de convertir mon point en virgule, mais je me trompe peut-être ?
Sinon, tu peux faire une autre méthode, c'est sans doute de la bidouille mais bon ^^ :
TextBox1.Text = Replace(TextBox1.Text, ".", ",")
Et pour garder les 2 chiffres après la virgule, tu peux :
- Si tu veux juste 2 chiffres brut, sans tenir compte des arrondis
Chercher la position de la virgule dans ton TextBox (avec la fonction InStr) et couper le contenu avec la fonction Left
- Si tu veux arrondir tes 2 décimales
Tu utilises la fonction Round en précisant 2 en décimal : round(TextBox1.Text, 2)
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 28 juil. 2006 à 13:38
Bonjour,
Le calcul n' a rien à voir avec l' affichage.
Tu fais ton calcule normalement
Z=X+Y ou Z=Round(X+Y) si tu préfère
Puis tu affiche le résultat
MonTextBox..Text=Format§(Z,"0.00")
et non Format§(Z,"##0.00")
Les '#' servent à définir le séparateur des milliers comme '### ##0.00' pour avoir '999 999.00'
En plus, le symbole décimal tient compte des Paramètres régionnaux. Soit . soit virgule et non les deux à la fois.
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 28 juil. 2006 à 16:09
Hum chaibat, je ne suis pas d'accord avec toi, tu dis les # servent à définir les séparateurs de milliers.
Le point : séparateur décimal
La virgule : séparateur de milliers
le # : non affichage du zéro, affichage que du chifffre s'il existe
exemple :
Monchiffre As Double: Monchiffre = 2789.432
Monchiffre = Format(Monchiffre, "# ###.00")
Resulat de la MsgBox : 2789.43
Monchiffre = Format(Monchiffre, "#,###.00")
Resulat de la MsgBox : 2 789.43
Monchiffre = Format(Monchiffre, "0,000.00#")
Resulat de la MsgBox : 2 789.432
@++
Mortalino
Le mystérieux chevalier, "Provençal, le Gaulois"
Vous n’avez pas trouvé la réponse que vous recherchez ?
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 28 juil. 2006 à 16:33
Entièment d' accord.
Reste à savoir comment tout celà est configuré dans tes "Paramètres régionaux"
Si dans ces derniers
>Le séparateur des milliers est un espace alors
Monchiffre = Format(Monchiffre, "# ###.00")
Resulat de la MsgBox : 2 789.43
>si c' est une "," alors
Monchiffre = Format(Monchiffre, "#,###.00")
Resulat de la MsgBox :
2,789.43
Pour éviter ce dernier affichage va dans tes paramètres régionnaux
et remplace Separateur des milliers (qui est une virgule par un espace.
Quand au point décimal dans ton code Monchiffre = Format(Monchiffre, "###.00") tu mets toujours un point
quelque soit sa configuration (Point ou Virgule). il te renvoie alors
soit
chaibat05
Messages postés1883Date d'inscriptionsamedi 1 avril 2006StatutMembreDernière intervention20 novembre 20072 28 juil. 2006 à 16:39
Dans
Monchiffre As Double: Monchiffre = 2789.432
Monchiffre = Format(Monchiffre, "# ###.00")
Resulat de la MsgBox : 2789.43
Il te renvoie ce résultat parce que ton séparateur
de milliers est configuré en virgule et non en espace.
Et donc il ne tient pas compte de ton Formatage !
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 28 juil. 2006 à 16:43
C'est vrai !
En fait je suis configuré dans les paramètres régionaux par rapport au langage VB.
Suite à des problèmes avec mes décimaux dans des TextBox (.) et les décimaux dans Excel (,).
@++
Mortalino
Le mystérieux chevalier, "Provençal, le Gaulois"
cs_vara956
Messages postés50Date d'inscriptionmardi 12 octobre 2004StatutMembreDernière intervention 4 novembre 2008 28 juil. 2006 à 22:01
re salut a vous tous
cool merci ca merche c moi qui essayer avec ma valeur direct du textbox don en y mettant le format(cdbl(textbox.text),"0.00") ca marche pilpoil
encore mille merci