Visual basic virgule et point

Résolu
remibarbier Messages postés 237 Date d'inscription   Statut Membre Dernière intervention   -  
remibarbier Messages postés 237 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Cela fait un moment que je cherche la solution, je comprends pas comment on doit faire.
J'aimerai pouvoir faire en sorte que si j'ai :

textbox1.text = 2.4

*

textbox2.text = 3.6

que je puisse avoir dans la textbox3.text
8.64

et non pas 8,64

j'espère que la solution n'est pas trop dur.
merci et joyeuse fête.
A voir également:

4 réponses

pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
Bonjour,
Peut être avec la fonction Replace...
textbox3.text = textbox1.text * textbox2.text
textbox3.text = (textbox3.text, ",", ".")
Voir ce lien pour d'autres options.
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
bonjour,
Tit oubli.. :-)
textbox3.text = Replace(textbox3.text, ",", ".")


Mais ça ne résout pas le problème, si le séparateur décimale de ton système est la virgule la multiplication de 2.4 * 3.6 va te donner 864 et pas 8,64Tu doit donc mettre 2,4 * 3,6 pour avoir 8,64 qui est numérique à virgule flottante.Ou alors, explique un peu mieux.
A+

--
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
merci Lermitte222. J'avais 'fectivement omis Replace...
Bonne fêtes de fin d'année à toi et aux tiens.
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
A toi pareil.
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
Merci!!
J'te laisse continuer ici, tu es bien plus compétent que moi en la matière.
A+
0
remibarbier Messages postés 237 Date d'inscription   Statut Membre Dernière intervention   16
 
Merci a vous,
En fait cela marche parce que j'utilise : val

textbox3.text = val(textbox1.text) * val(textbox2.text) 
textbox3.text = Replace(textbox3.text, ",", ".")


cela permet d'utilisé le clavier numérique pour taper les chiffres a virgule dans les textbox.
je pense que tout le monde utilise le point à la place de la virgule, c'est plus rapide à taper que d'utilisé la virgule du clavier, non ?
Et cela permet de ne pas changer les options régionales.

J'espère que cela marchera pour ceux qui n'ont pas de clavier numérique sur les portable ?
0
lermite222 Messages postés 8724 Date d'inscription   Statut Contributeur Dernière intervention   1 191
 
Val fonctionne avec le point mais ton appli ne serra pas transportable, si le séparateur (pavé numérique) est la virgule (programmable avec Office et Windows) le résultat ne serra plus juste. Tu peu faire l'essai.
C'est l'éternel discussion, le choix est laisser à l'utilisateur pour le point ou la virgule, pour l'écriture les VB en tiennent compte mais pour les calculs IL FAUT UN POINT
pour que ça marche sur tout les PC il faut faire..
    TextBox3 = Replace(Val(Replace(TextBox1, ",", ".")) * Val(Replace(TextBox2, ",", ".")), ",", ".")

C'est pas évident mais y a rien à faire
A+
0
remibarbier Messages postés 237 Date d'inscription   Statut Membre Dernière intervention   16
 
merci beaucoup pour l'aide que tu ma apporter.
0