Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Syntaxe : DoCmd.RunSQL "DELETE...

3 réponses
Avatar
gauso
Bonjour,
Je craque compl=E8tement !!!
Sur un formulaire je donne la possibilit=E9 d'afficher certains
enregistrements (changement du recordsource), mais comme, dans ce cas,
la requ=EAte sous-jacente ne permets pas la suppression
d'enregistrements, je veux offrir la possibilit=E9 de le faire quand
m=EAme...et j'ai donc mis du code sur l'=E9v=E8nement "Sur suppression"...
J'ai d=E9j=E0 fait exactement la m=EAme chose sur un autre formulaire et =
=E7a
marche parfaitement... alors pourquoi, le m=EAme code, sur ce formulaire
l=E0 me donne une erreur de syntaxe (3075 : op=E9rateur absent dans
l'expression 'RefInstit=3D'. ?????

If Me.RecordSource =3D "ReqAdresInstitSansEnregInstitPers" Then
Cancel =3D True
DoCmd.SetWarnings False
DoCmd.RunSQL "DELETE * FROM AdresInstitutions WHERE RefInstit =3D" & Me!
[RefInstit]
DoCmd.SetWarnings True
End If

Merci par avance =E0 ceux qui voudront bien se pencher sur mon
probl=E8me :o)
Sonia.

3 réponses

Avatar
Gilbert
Bonjour,

Si ta valeur RefInstit est alphanumérique, tu dois l'encadrer avec des '

DoCmd.RunSQL "DELETE * FROM AdresInstitutions WHERE RefInstit ='" & Me!
[RefInstit] & "'"


--
Cordialement,

Gilbert


"gauso" a écrit dans le message de news:

Bonjour,
Je craque complètement !!!
Sur un formulaire je donne la possibilité d'afficher certains
enregistrements (changement du recordsource), mais comme, dans ce cas,
la requête sous-jacente ne permets pas la suppression
d'enregistrements, je veux offrir la possibilité de le faire quand
même...et j'ai donc mis du code sur l'évènement "Sur suppression"...
J'ai déjà fait exactement la même chose sur un autre formulaire et ça
marche parfaitement... alors pourquoi, le même code, sur ce formulaire
là me donne une erreur de syntaxe (3075 : opérateur absent dans
l'expression 'RefInstit='. ?????

If Me.RecordSource = "ReqAdresInstitSansEnregInstitPers" Then
Cancel = True
DoCmd.SetWarnings False
DoCmd.RunSQL "DELETE * FROM AdresInstitutions WHERE RefInstit =" & Me!
[RefInstit]
DoCmd.SetWarnings True
End If

Merci par avance à ceux qui voudront bien se pencher sur mon
problème :o)
Sonia.
Avatar
gauso
Bonjour et merci Gilbert :o)
... mais non RefInstit est du pur numérique (automatique : clé
primaire)... et si je fais ce que tu dis, j'ai une erreur 3464 (types
de données incompatibles...)

Hélas, hélas...
Une autre idée ?
Sonia.


Si ta valeur RefInstit est alphanumérique, tu dois l'encadrer avec des '

DoCmd.RunSQL "DELETE * FROM AdresInstitutions WHERE RefInstit ='" & Me!
[RefInstit] & "'"

--
Cordialement,

Gilbert




Avatar
gauso
Oups... je viens de comprendre : ne trouvait pas RefInstit qui n'était
pas dans ma requête !!!? Qué gourdasse définitive...
Pardon pour le dérangement ;o)
Merci encore,
Sonia.