Aide sur la convertion de données [Résolu]

Messages postés
14
Date d'inscription
vendredi 25 mars 2005
Statut
Membre
Dernière intervention
24 avril 2009
- - Dernière réponse : gillardg
Messages postés
3288
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
- 5 nov. 2008 à 14:38
Salut à tous,
Je veux saisir et sauvegarder un taux dans ma base de données SQL Serveur 2005 stanadard.
Le champ taux est du type float dans ma base de données, et je voulais forcer la convertion de la valeur de mon text box en double et passer à l'enregistrement mais ça ne marche et me génère des erreurs.
Je demande votre aide pour resoudre mon problème.
Merci.

junior
Afficher la suite 

17 réponses

Meilleure réponse
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
18
3
Merci
Bonjour,

Une Textbox contient ds valeurs de type String
Pour savoir comment faire la conversion en type double, il nous faut savoir si tu y utilises un séparateur décimal et (si oui) lequel ...

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 129 internautes nous ont dit merci ce mois-ci

Commenter la réponse de jmfmarques
Messages postés
3288
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
3
3
Merci
Bonjour,
Curency

Dim s As String
s = "123,125"
Dim d As Currency
d = CCur(s)
MsgBox (d)

a+

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 129 internautes nous ont dit merci ce mois-ci

Commenter la réponse de gillardg
Messages postés
3288
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
3
3
Merci
Bonjour,

je t'ai déjà répondu !
relis les précédents post

a+

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 129 internautes nous ont dit merci ce mois-ci

Commenter la réponse de gillardg
Messages postés
14
Date d'inscription
vendredi 25 mars 2005
Statut
Membre
Dernière intervention
24 avril 2009
0
Merci
merci, effectivement j'utilise un séparateur décimal et c'est la  virgule ","

junior
Commenter la réponse de marthyly
Messages postés
3288
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
3
0
Merci
Bonjour,

et ta base de données elle utilise quel séparateur décimal ??

a+
Commenter la réponse de gillardg
Messages postés
14
Date d'inscription
vendredi 25 mars 2005
Statut
Membre
Dernière intervention
24 avril 2009
0
Merci
Salut,
ma base utilise comme séparateur la virgule ","
merci a+
junior
Commenter la réponse de marthyly
Messages postés
3288
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
3
0
Merci
Bonjour,









Dim

str


As





String

=


"123,125"








Dim

dbl


As





Double

=


CDbl

(str)




si le séparateur décimal system est le point ( international)
cela provoque une erreur

donc dabord verifier le séparateur décimal




System.Globalization.CultureInfo.CurrentCulture.NumberFormat.CurrencyDecimalSeparator









a+
Commenter la réponse de gillardg
Messages postés
14
Date d'inscription
vendredi 25 mars 2005
Statut
Membre
Dernière intervention
24 avril 2009
0
Merci
merci, je vais voir ça et te tenir informer
a+
junior
Commenter la réponse de marthyly
Messages postés
14
Date d'inscription
vendredi 25 mars 2005
Statut
Membre
Dernière intervention
24 avril 2009
0
Merci
Salut gillardg,
je te rappelle que je suis en vb 6.0 je n'arrive pas à faire le test
peux tu plus me guider.
merci
junior
Commenter la réponse de marthyly
Messages postés
3288
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
3
0
Merci
Bonjour,

oufti désolé non j'ai répondu trop vite

a+
Commenter la réponse de gillardg
Messages postés
1231
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
16 juin 2009
1
0
Merci
Bonjour,

Alors ma question va peut être paraitre bête mais l'utilisation de la fonction CDbl ne va pas???

ref : MSDN
<hr />
CDbl, <object id="alink_14" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"></object>http://www.vbfrance.com/forum/sujet-PENSE-PAS-SI-BETE_1223666.aspx
Commenter la réponse de lillith212
Messages postés
14
Date d'inscription
vendredi 25 mars 2005
Statut
Membre
Dernière intervention
24 avril 2009
0
Merci
Non la fonction double ne marche pas.
j'ai un champ taux dans ma base de type float et je tente d'enregistrer des données decimales mais ça bloque.
je saisie dans un textbox qui par defaut est de type string. donc je fais une conversion de type vers le type double avec CDbl ou decimale ou CDl mais ça bloque tjrs
junior
Commenter la réponse de marthyly
Messages postés
14
Date d'inscription
vendredi 25 mars 2005
Statut
Membre
Dernière intervention
24 avril 2009
0
Merci
Merci pour la réponse mais ça résoud en partie mon problème.
Car quand je remplace "123,125" par la valeur que contient mon textbox  j'ai une erreur:

s= txt_taux.text
d = CCur(s)
MsgBox (d)
 erreur : type incompatible
Merci.
junior
Commenter la réponse de marthyly
Messages postés
3288
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
3
0
Merci
Bonjour,

quelle est cette valeur qui pose problème??

a+
Commenter la réponse de gillardg
Messages postés
14
Date d'inscription
vendredi 25 mars 2005
Statut
Membre
Dernière intervention
24 avril 2009
0
Merci
Salut,
en fait je parle de la valeur que contiendrait mon textbox, mais pas d'une valeur statique.
Merci

junior
Commenter la réponse de marthyly
Messages postés
3288
Date d'inscription
jeudi 3 avril 2008
Statut
Membre
Dernière intervention
14 septembre 2014
3
0
Merci
Bonjour,
"quand je remplace "123,125" par la valeur que contient mon textbox  j'ai une erreur:"

donnes le code  + la valeur qui pos problème sinon impossible d'avancer

et surtout arretes de me spamer  avec des Messages Privés !

a+
Commenter la réponse de gillardg
Messages postés
14
Date d'inscription
vendredi 25 mars 2005
Statut
Membre
Dernière intervention
24 avril 2009
0
Merci
Désoler pour les messages privés.
Voici mon bout de codes qui me donne des soucis :

Private Sub Txt_Taux_KeyPress(KeyAscii As Integer)

Dim s As String


' permet la saisie de chiffre et du séparateur décimal ,
If Not IsNumeric(Chr(KeyAscii)) Then       If KeyAscii 8 Or (KeyAscii 44 And InStr(Txt_Taux.Text, ",") = 0) Then
          ' on fait rien
       Else
          KeyAscii = 0
       End If
End If
s = Txt_Taux.Text
Dim d As Currency
d = CCur(s) 'c'est là qu'il me dit type incompatible
MsgBox (d)
End Sub

nb: je veux pouvoir receuillir la valeur  decimale que l'user saisira dans le textbox dans une variable et l'enregistrer dans ma base.
Merci



junior
Commenter la réponse de marthyly