Point decimal, virgule et autre *** urgent **

Résolu
cs_vara956 Messages postés 50 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 4 novembre 2008 - 28 juil. 2006 à 12:17
cs_vara956 Messages postés 50 Date d'inscription mardi 12 octobre 2004 Statut Membre Dernière intervention 4 novembre 2008 - 28 juil. 2006 à 22:01
Salut les gars,

je fais un calcul entre deux variables, comment faire pour avoir que deux chiffress apres la virgule,

j'ai essayer avec  Textbox1.text=Format(total.tostring,"#.##0.00")
Mais ca marche pas dans mon textebox du resultat ca met #.##

y a til une solution  ?

sinon pour quoi quand je fais un caclu avec une virgule et un autre avec le point ca donne pas les chiffre derrier la virgule du resultat

ce n'etait pas si compliquer avec vb5 et 6
peux ton tranfsormer un chiffre a virgule en a un chiffre a point
merci beau coup de votre aide
A voir également:

8 réponses

Molenn Messages postés 797 Date d'inscription mardi 7 juin 2005 Statut Membre Dernière intervention 23 février 2011 7
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)
3
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
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.
3
erefdatacomputing Messages postés 165 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 24 avril 2018
28 juil. 2006 à 14:26
Salut 358043 vara956!!

Normalement:

si a, b, et c sont des TextBox
x est une variable dimensionnée en Integer

x = Val(a) + Val(b)
c = Format(x, "###0.00")

permet de formatter une Variable Numérique ('x') , et de la mettre avec 2 chiffres après la virgule.

Vérifies que 'x' soit  bien 'Numérique', et que tes paramètres régionaux (dans WINDOWS) on bien le '.' et non la ',' comme séparateur décimale.

Essaye le, il n'y a pas de raison que ça ne marche pas !!!

bye ....

Je comprends vite mais il faut m'expliquer longtemps et tout en détails !!!
3
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
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"
3

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
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 


789.43 ou 789,43
3
chaibat05 Messages postés 1883 Date d'inscription samedi 1 avril 2006 Statut Membre Dernière intervention 20 novembre 2007 2
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 !
3
mortalino Messages postés 6786 Date d'inscription vendredi 16 décembre 2005 Statut Membre Dernière intervention 21 décembre 2011 18
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"
3
cs_vara956 Messages postés 50 Date d'inscription mardi 12 octobre 2004 Statut Membre Derniè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


 
0
Rejoignez-nous