Point decimal, virgule et autre *** urgent ** [Résolu]

cs_vara956 50 Messages postés mardi 12 octobre 2004Date d'inscription 4 novembre 2008 Dernière intervention - 28 juil. 2006 à 12:17 - Dernière réponse : cs_vara956 50 Messages postés mardi 12 octobre 2004Date d'inscription 4 novembre 2008 Dernière intervention
- 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
Afficher la suite 

8 réponses

Répondre au sujet
Molenn 797 Messages postés mardi 7 juin 2005Date d'inscription 23 février 2011 Dernière intervention - 28 juil. 2006 à 13:08
+3
Utile
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)
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Molenn
chaibat05 1884 Messages postés samedi 1 avril 2006Date d'inscription 20 novembre 2007 Dernière intervention - 28 juil. 2006 à 13:38
+3
Utile
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.
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de chaibat05
erefdatacomputing 164 Messages postés mardi 7 mars 2006Date d'inscription 20 décembre 2017 Dernière intervention - 28 juil. 2006 à 14:26
+3
Utile
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 !!!
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de erefdatacomputing
mortalino 6812 Messages postés vendredi 16 décembre 2005Date d'inscription 21 décembre 2011 Dernière intervention - 28 juil. 2006 à 16:09
+3
Utile
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"
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de mortalino
chaibat05 1884 Messages postés samedi 1 avril 2006Date d'inscription 20 novembre 2007 Dernière intervention - 28 juil. 2006 à 16:33
+3
Utile
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
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de chaibat05
chaibat05 1884 Messages postés samedi 1 avril 2006Date d'inscription 20 novembre 2007 Dernière intervention - 28 juil. 2006 à 16:39
+3
Utile
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 !
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de chaibat05
mortalino 6812 Messages postés vendredi 16 décembre 2005Date d'inscription 21 décembre 2011 Dernière intervention - 28 juil. 2006 à 16:43
+3
Utile
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"
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de mortalino
cs_vara956 50 Messages postés mardi 12 octobre 2004Date d'inscription 4 novembre 2008 Dernière intervention - 28 juil. 2006 à 22:01
0
Utile
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


 
Commenter la réponse de cs_vara956

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.