|
|
|
|
Pb d'execution de requete UPDATE sous ACCESS
Dernière réponse le 13 sep 2007 à 13:04:55 kiwijinshi, le 3 avr 2007 à 11:45:14Bonjour à toutes et à tous,
J'ai créé une requete SQL (appelée INSERT) sous MS ACCESS 2000 qui fonctionne très bien lorsque je l'exécute en mode création (après avoir entré à la main les valeurs VAR_DOSSIER et VAR_NUMREF):
UPDATE Table1 AS Tab1 SET Tab1.Dossier = VAR_DOSSIER
WHERE (Tab1.Dossier=0 And Tab1.NumRef=VAR_NUMREF);
En revanche, lorsque je l'exécute par du VBA sous ACCESS pour renseigner les deux valeurs automatiquement, la table 1 n'est pas modifiée. Voici mon code VBA :
MsgBox "VARDOSSIER VARNUMREF = " & VARDOSSIER & " " & VARNUMREF
Set QrDef = CurrentDb.QueryDefs("INSERT")
QrDef.Parameters("VAR_DOSSIER").Value = VARDOSSIER
QrDef.Parameters("VAR_NUMREF").Value = VARNUMREF
MsgBox "VARDOSSIER VARNUMREF = " & VARDOSSIER & " " & VARNUMREF
Les MsgBox m'assurent que les valeurs avant et après la requete sont bien celles que je rentre à la main et ne sont pas modifiées au cours de l'exécution de la requête.
(VARDOSSIER est un Integer et VARNUMREF un String)
Comment ca se fait qu'en VBA aucun changement n'est fait ????
Comment faire pour rendre ma requete efficace ????
J'espère que mon problème est suffisamment détaillé et clair ?! J'espère surtout qu'il a une solution ;)
Merci d'avance à tous ceux (et celles) qui s'y intéressent !
Configuration: Windows 2000 Internet Explorer 5.5
Salut,
Dim StrSql as String
Dim Req as QueryDef
StrSql = "UPDATE Table1 AS Tab1 "
StrSql = StrSql + " SET Tab1.Dossier = " & VAR_DOSSIER & " "
StrSql = StrSql + " WHERE (Tab1.Dossier=0 And "
StrSql = StrSql + " Tab1.NumRef = " & VAR_NUMREF & ");"
Set Req = CurrentDb.CreateQueryDef("", StrSql)
Req.Execute dbFailOnError Et je suis sûr que ça irait mieux...
A+ Blux "Les cons, ça ose tout. C'est même à ça qu'on les reconnait" |
L'application de la requête est différente, mais le problème reste le même ...
|
Ben, je savais pas, mais pour moi, VARNUMREF, avec un nom comme ça, c'était numérique...:-)
StrSql = StrSql + " Tab1.NumRef = '" & VARNUMREF & "');"-- A+ Blux "Les cons, ça ose tout. C'est même à ça qu'on les reconnait"
|
Bonjour à tout
|

