OVH Cloud OVH Cloud

[Access97] Requête SQL et VBA, toujours...

11 réponses
Avatar
Jc
Bonjour(soir) Tous,

Merci de votre aide pour me corriger (encore une fois).

Une requête qui fonctionne :

UPDATE 90_Calendrier SET [90_Calendrier].[902FETE] = Null
WHERE (((Format([902DEPUI],"yyyy"))>"1950"));

J'essaie de la traduire en VBA :

DoCmd.RunSQL "UPDATE 90_Calendrier" & "SET [90_Calendrier].[902FETE] =
Null" _
& " WHERE (#" & Format([90_Calendrier].[902DEPUI], "yyyy" &
"# )>1950);")

- A l'exécution, si, dans la condition WHERE, je laisse le nom de champ
seul, càd [902DEPUI], j'ai une erreur "erreur de compilation" "Nom
externe non défini".
- Si je l'accompagne du nom de la table, càd [90_Calendrier].[902DEPUI],
j'ai la même erreur, mais sur le nom de table...

Pourtant, à la compilation, je n'ai pas d'erreur...

Une suggestion ?

Merci et
--
Bonne fin de journée.
----------------------------------------
Jclg88
Cliquer sur ce lien pour me joindre par mél :
http://cerbermail.com/?JVKAlLV1Rf
----------------------------------------

1 réponse

1 2
Avatar
Buddy
Comme toujours le site Raymond est très complet
sinon tu peux aussi aller voir www.developpez.com
et puis la liste est longue donc direction www.google.fr

Ouala
Bye
Buddy



"Jc" a écrit dans le message de
news:
Bonjour(soir) Buddy,


"Buddy" a écrit dans le message news:

Salut

Regardes bien les exemples déjà fournis

DoCmd.RunSQL "UPDATE 90_Calendrier SET [90_Calendrier].[ANNIV] = Null
WHERE

Year([901DEPUI])>" & LanCour & ";"


Encore merci de votre aide. CA MARCHE !!!

Une question : J'utilise les 2 bouquins de MS-Press et ceux de
MicroApplication, mais on n'y trouve que quelques pages sur le langage
SQL et pratiquement rien sur l'utilisation de ce langage dans VBA (cde :
DoCmd.Run SQL). Connaissez-vous un bon bouquin, un site, enfin quelque
chose qui explique comment bâtir des requêtes qui fonctionnent ?
--
Bonne fin de journée.
----------------------------------------
Jclg88
Cliquer sur ce lien pour me joindre par mél :
http://cerbermail.com/?JVKAlLV1Rf
----------------------------------------

"Jc" a écrit dans le message de
news:
Bonjour(soir) Tous,

Je reviens sur cette requête qui me cause toujours des soucis.

- Si j'écris :

DoCmd.RunSQL "UPDATE 90_Calendrier" _
& " SET [90_Calendrier].[ANNIV] = Null" _
& " WHERE
Year([901DEPUI])>Forms![Planificateur-ChAnnee/FSaisie]![SAISIE];"

pas de soucis.

- Si j'écris :

Dim LanCour As Integer
LanCour = Forms![Planificateur-ChAnnee/FSaisie]![SAISIE]

DoCmd.RunSQL "UPDATE 90_Calendrier" _
& " SET [90_Calendrier].[ANNIV] = Null" _
& " WHERE Year([901DEPUI])>LanCour;"

la machine ne reconnait pas "LanCour" et me redemande sa valeur.
NB: si je vérifie la valeur de "LanCour", après l'éxécution de la
requête par:

MsgBox (LanCour)

j'ai bien sa valeur.

Q- Comment faut-il désigner une variable dans la condition WHERE
d'une


requête UPDATE appelée par DoCmd.RunSQL ?

Merci de votre aide et
--
Bonne fin de journée.
----------------------------------------
Jclg88
Cliquer sur ce lien pour me joindre par mél :
http://cerbermail.com/?JVKAlLV1Rf
----------------------------------------










1 2