Bon, si ça bloque au niveau de la requête, il faut voir si elle est bien écrite...
Alors transforme ton code comme ceci :
Dim qte As Double, sql As String
qte = Val(ztqte.Value)
sql = "UPDATE References SET quantite = quantite + " + qte + " WHERE ref = '" + Zlref.Value + "';"
Debug.Print sql 'Ceci va écrire la requête dans la fenêtre Exécution
DoCmd.SetWarnings False
DoCmd.RunSQL sql
DoCmd.SetWarnings True
|
Regarde ce que te donne le debug.print. Si tu ne trouves pas, copie-colle le résultat ici.
Je soupçonne que le Zlref.Value te renvoie un Nombre plutôt qu'une chaine.
L'erreur incompatibilité de type arrive souvent dans on balance un string et que le champ attend un type Long ou un type Date.
Dans ta table le champ Ref est la clé ? Généralement, la clé est de type numérique Long Auto. Dans ce cas les ' seraient de trop dans :
WHERE ref = '" + Zlref.Value + "';" |
et généralement, dans une liste déroulante, on récupère la valeur de première colonne (qui est masquée) et qui renvoie aussi un Entier long.
---------------
OtObOxBlOg - - - Etre seul à avoir tort c'est plus difficile, mais c'est bien plus beau que d'avoir raison avec une bande de cons