Visual basic erreur 3144 quand chiffre décimal
Résolu
Jonathan
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'ai une erreur uniquement quand un chiffre décimal.
mon code est :
Dim base As Database: Dim requete As String
If (Ref_Couleur.Value <> "" And IsNumeric(qts_maj.Value)) Then
Set base = Application.CurrentDb
requete = "Update Peintures SET Quantité = " & qts_maj.Value & " WHERE Code_couleur='" & Ref_Couleur.Value & ";"
base.Execute requete
MsgBox "Les stocks pour la référence : " & Ref_Couleur.Value & ", ont correctement été mis à jour pour une quantité désormais égale à : " & qts_maj.Value
Set base = Nothing
End If
Merci de votre aide
J'ai une erreur uniquement quand un chiffre décimal.
mon code est :
Dim base As Database: Dim requete As String
If (Ref_Couleur.Value <> "" And IsNumeric(qts_maj.Value)) Then
Set base = Application.CurrentDb
requete = "Update Peintures SET Quantité = " & qts_maj.Value & " WHERE Code_couleur='" & Ref_Couleur.Value & ";"
base.Execute requete
MsgBox "Les stocks pour la référence : " & Ref_Couleur.Value & ", ont correctement été mis à jour pour une quantité désormais égale à : " & qts_maj.Value
Set base = Nothing
End If
Merci de votre aide
5 réponses
-
Bonjour,
Sans doute un problème d'interprétation de la décimale : en français c'est la virgule qui sert de séparateur ; en anglais c'est le point.
Et dans Acces, c'est la notation anglaise qu'il faut utiliser. -
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour,
une erreur quand quoi contient un chiffre décimal?
une erreur à quelle ligne de code?
merci d'utiliser les balises de code quand tu partages du code, en tenant compte que VBA est du basic: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code-
Bonjour,
J'ai une erreur uniquement quand un chiffre décimal.
mon code est :
Dim base As Database: Dim requete As String If (Ref_Couleur.Value <> "" And IsNumeric(qts_maj.Value)) Then Set base = Application.CurrentDb requete = "Update Peintures SET Quantité = " & qts_maj.Value & " WHERE Code_couleur='" & Ref_Couleur.Value & ";" base.Execute requete MsgBox "Les stocks pour la référence : " & Ref_Couleur.Value & ", ont correctement été mis à jour pour une quantité désormais égale à : " & qts_maj.Value Set base = Nothing End If
Débogage Acces me dit qu'il y a un problème à la lignebase.Execute requete
Selon mes recherches ça serait la valeurqts_maj
qui est en format décimal (quantité en kg) qui serait vu comme deux éléments différent. Je ne trouve pas comme faire pour évité ça, car access ne prends pas l'entrée avec un point dans ma table.
Merci de votre aide- Voilà je te mets une ligne de ma table Peinture.
Code_couleur : 009/10880
nom_couleur : CASHMERE
Quantité : 0,362
-
-
Finalement, j'ai changer mon séparateur décimal de mon système et tout c'est réglé. Il doit y avoir une autre solution, mais je ne l'ai pas trouver pour le moment. Si quelqu'un la trouve nous la partager.
-
qts_maj = "Quantité" de la table Peinture - une "Quantité" inscrite dans une case du formulaire
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
0,341
mais, la commande que tu m'as donnée
replace(qts_maj.Value,",",".")
a résolut le problème, je crois que s'était visual basic qui ne prenais pas la donné comme une seul valeur étant donné la virgule en changeant la virgule en point ça résolut le problème.
Merci encore.