>> Chnager le format d'un nombre...

Signaler
Messages postés
28
Date d'inscription
jeudi 5 juin 2003
Statut
Membre
Dernière intervention
3 août 2003
-
Messages postés
3
Date d'inscription
mardi 28 septembre 2004
Statut
Membre
Dernière intervention
28 septembre 2004
-
J'ai un nombre de ce style dans une de mes textbox : "1.23"

Comment faire pour enregistrer ce nombre sous la forme "1.230000" dans un fichier text?

Et comment faire pour que le nombre enregistré ait toujours la meme longeur?

Exemple:
------------
j'ai "1.3" ou "1.33" qui peuvent etre mis dans ma textbox. Et en sortie il faudra obligatoirement que ca sauvegarde au format avec le meme nombre de chiffre.
Donc soit "1.3000" pour la premier possibilité ou "1.3300" pour la deuxieme.

J'espere que vous m'avez compris et que vous pourrez répondre a mon probleme.
@+
TOM

12 réponses

Messages postés
82
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juillet 2009
1
Utilise la fonction "Format":

dim texte as string
texte=Format(textbox1.text, "#0.0000")

Avec ça le texte de ta textbox sera enregistré avec 4 chiffres apres le point dans la variable texte.

J'espere que j'ai résolut ton probleme.Salut.

Mr_toto
Messages postés
28
Date d'inscription
jeudi 5 juin 2003
Statut
Membre
Dernière intervention
3 août 2003

Mais avec cette fonction, je me retrouve avec une virgule et pas un point. Comment remplacer la virgule par un point?
Messages postés
82
Date d'inscription
mardi 4 février 2003
Statut
Membre
Dernière intervention
7 juillet 2009
1
Mr_toto

J'avais pas pensé a ça.

Tu peut utiliser la fonction "Replace(Chaine,ChaineRecherchée,ChaineRemplacement)" pour changer la "," en "." dans ta chaine de caractere :

texte=Replace(Format(textbox1.text, "#0.0000"),",",".")
Messages postés
28
Date d'inscription
jeudi 5 juin 2003
Statut
Membre
Dernière intervention
3 août 2003

Merci, vraiment, ca me sort d'un mauvais pas!
@+
Messages postés
28
Date d'inscription
jeudi 5 juin 2003
Statut
Membre
Dernière intervention
3 août 2003

Probleme :
J'ai bien fait comme tu m'as dit c'ets a dire comme cela :

-----------------------------------------
dim X as string
X = Replace(Format(Text13.Text, "#0.000000"), ",", ".")

Print #1, " CenterOfGravity " + X ; ""

-----------------------------------------

et ca me donne ca dans mon fichier texte au final (j'ai mis "1.2" dans la textbox13...):

" CenterOfGravity 0.043056 "

Pk ca fait ca??
Messages postés
1858
Date d'inscription
samedi 29 juin 2002
Statut
Membre
Dernière intervention
17 octobre 2013
10
Bonsoir

X = Replace ..... X est un texte (String)

" CenterOfGravity " est un texte (String)

Donc " CenterOfGravity " + X est le texte obtenu en concaténant les 2 textes précédents. C'est la même chose que " CenterOfGravity " & X
Messages postés
28
Date d'inscription
jeudi 5 juin 2003
Statut
Membre
Dernière intervention
3 août 2003

Et aurais tu une solution pour corriger cette erreur?
Messages postés
1858
Date d'inscription
samedi 29 juin 2002
Statut
Membre
Dernière intervention
17 octobre 2013
10
Certainement si tu me dis ce que tu veux obtenir et à partir de quoi :
Text13.Text = "1.2"
CenterOfGravity = ??? (un nombre ? Juste un texte ?)
Finalement, dans le fichier texte : "?????????????"
Messages postés
28
Date d'inscription
jeudi 5 juin 2003
Statut
Membre
Dernière intervention
3 août 2003

J'ai ce code là :
-----------------------------------------
dim X as string
X = Replace(Format(Text13.Text, "#0.000000"), ",", ".")

Print #1, " CenterOfGravity " + X ; ""

-----------------------------------------
Et je veut que quand je tappe par exemple le chiffre 1.2 dans la text box 13, j'obtienne la ligne suivante dans le fichier texte :

" CenterOfGravity 1.200000 "

Mais je veut que quelque qsoit le nombre que je mette dans ma textbox, le nombre soit composer de 6 chiffre apres la virgule.

Exemple : je met 1.55 dans la textbox, et il faudra que dans mon fichier text, j'ai ceci :

" CenterOfGravity 1.550000 "

----------------------------------------
Seulement quand je tape un chiffre dans la textbox, et que j'enregistre, le résulta dans le fichier texte n'ets pas le meme que ce que j'ai tapé. ET c'ets là mon probleme.
Messages postés
1858
Date d'inscription
samedi 29 juin 2002
Statut
Membre
Dernière intervention
17 octobre 2013
10
Trouvé !

Dans Text13, il faut saisir 1,2 (avec une virgule) et non 1.2

Tu peux aussi écrire :

X = Replace(Format(Replace(Text13.Text, ".", ","), "#0.000000"), ",", ".")
pour que ça marche aussi bien avec point ou virgule
Messages postés
28
Date d'inscription
jeudi 5 juin 2003
Statut
Membre
Dernière intervention
3 août 2003

merci c'ets parfait ca marche!
@+
Messages postés
3
Date d'inscription
mardi 28 septembre 2004
Statut
Membre
Dernière intervention
28 septembre 2004

Comment changer le format d'un nombre dans TextBox1 pour obtenir un séparateur des milliers, lorsque l'on a entré dans la propriété / TextBox1 / ControlSource / le Nom d'une cellule contenant un nombre