cs_Fabian123
Messages postés180Date d'inscriptionvendredi 18 janvier 2008StatutMembreDernière intervention22 novembre 2013
-
29 févr. 2008 à 12:17
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 2018
-
29 févr. 2008 à 23:33
Bonjour, c'est encore moi...!
Voilà mon nouveau probleme...
J'enregistre des infos saisies dans des textbox dans un fichier .txt... jusque là pas de souci!
mais, dans une textbox, on saisi un prix, qui contient donc des décimales (j'utilise donc la propriété 'double')
et lorsque il sauvegarde dans le fichier .txt il enregstre en entier... (par exemple 0,95 devient 95...)
Je pense que je dois convertir le chiffre en texte avec la commande CStr( )... mais je ne sais pas ou je dois la placer dans le code... (je ne sais pas non plus si c'est cela que je dois faire d'ailleurs!)
je vous laisse le code que j'ai fait ci dessous:
Private Sub CommandButtonAjouter_Click()
Dim texte As String
Dim prix As Double
Dim Quantité As Integer
texte = TextBoxArticle.Text
prix = TextBoxPU.Text
Quantité = TextBoxQuantité.Text
Open "c:\essai.txt" For Append As #1
Print #1, texte; Tab; prix; Tab; Quantité
Close #1
Call UserFormVisualiserArticle.ComboBoxArticle.AddItem(texte)
TextBoxArticle.Text = vbNullString
TextBoxPU.Text = vbNullString
TextBoxQuantité.Text = vbNullString
UserFormCréerArticle.Hide
End Sub
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 29 févr. 2008 à 14:32
Salut
Prix est dimensionné en Double
Il faut donc utiliser CDble("Texte du prix")
Attention toutefois car CDble ne fonctionne qu'avec des chiffres.
Donc, si l'utilisateur saisit par inadvertance une lettre, c'est l'erreur de programme !
Astuce : Insérer un Val entre deux :
Prix = CDble(Val("Texte du prix"))
Dans ce cas, pas d'erreur et valeur 0 à la place (c'est quelque fois moins pire)
Pense aussi à transformer les virgules en point (pour les décimaux), tout dépend des habitudes des utilisateurs.
Un Replace fera l'affaire.
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
cs_Fabian123
Messages postés180Date d'inscriptionvendredi 18 janvier 2008StatutMembreDernière intervention22 novembre 2013 29 févr. 2008 à 14:54
Merci beaucoup!!!
ca fonctionne nickel!
tient, à propos, est-ce qu'on ne pourrais pas passer par un msgbox si l'utilisateur entre une lettre à la place d'un chiffre afin de lui demander d'introduire exclusivement un chiffre?