En essayant de créer un bouton pour supprimer certains enregistrements dans un sous-formulaire. Cependant, je reçois une erreur de syntaxe (opérateur manquant) dans l'expression de requête 'KEY_ID = "1'.Accéder à VBA - Identifier le texte
Je sais quel est le problème: L'attribut est du texte, donc la valeur doit être entourée de guillemets simples. Je ne sais pas comment écrire la VBA pour accomplir cela.
Private Sub cmdDelete_Click()
If Not (Me.subKey.Form.Recordset.EOF And Me.subKey.Form.Recordset.BOF) Then
If MsgBox("Confirm Deletion?", vbYesNo) = vbYes Then
Dim strSql As String
strSql = "DELETE FROM KEYS" & _
" WHERE KEY_ID='" & Me.subKey.Form.Recordset.Fields("KEY_ID")
Debug.Print strSql ' <- prints to Immediate window
CurrentDb.Execute strSql, dbFailOnError
End If
End If
Merci beaucoup. Cela fait tellement longtemps que je suis là-dedans. – Batman
Le placement de guillemets et '&' n'a pas beaucoup de sens pour moi:/ – Batman
Votre SQL est complète, comme vous l'avez dit, à l'exception de la citation de fermeture. '&" '"' prend soin de cela. Etape de dépannage: Exécutez ce code sans la variable 'Me.subKey'. Juste le faire fonctionner, puis ajouter les complications. Cela devrait avoir du sens au moment où vous avez terminé. – Smandoli