Requete SQL dans VBA Access
Pioup
-
lys44 Messages postés 57 Date d'inscription Statut Membre Dernière intervention -
lys44 Messages postés 57 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai un petit soucis avec une requête SQL (je suis débutant là dedans, je faisais tout par assistant, mais je souhaite maitriser d'avantage ce langage) que je veux lancer dans un code VBA d'un bouton d'un formulaire Access.
Donc en gros, je veux mettre à jour un champ d'une table en fonction de ce qui a été écrit dans une zone de texte.
Il me semble que ma requête est exacte, mais c'est la syntaxe pour l'éxécuter dans Access qui m'est totalement inconnue, j'ai "bidouillé" en faisant des recherches sur Internet mais cela ne fonctionne pas. (j'ai enlevé les trucs qui ne sont pas lié à mon problème dans le code suivant)
Donc voila, j'espère que quelqu'un pourra m'aider !
Merci d'avance.
A+
Pioup
J'ai un petit soucis avec une requête SQL (je suis débutant là dedans, je faisais tout par assistant, mais je souhaite maitriser d'avantage ce langage) que je veux lancer dans un code VBA d'un bouton d'un formulaire Access.
Donc en gros, je veux mettre à jour un champ d'une table en fonction de ce qui a été écrit dans une zone de texte.
Il me semble que ma requête est exacte, mais c'est la syntaxe pour l'éxécuter dans Access qui m'est totalement inconnue, j'ai "bidouillé" en faisant des recherches sur Internet mais cela ne fonctionne pas. (j'ai enlevé les trucs qui ne sont pas lié à mon problème dans le code suivant)
[...] Statut = Me.ZT_Statut ID = Me.ZT_ID requete = "UPDATE [Demande d'Intervention] SET [Statut_Intervention] = Statut WHERE ID_Intervention = ID" DoCmd.RunSQL requete
Donc voila, j'espère que quelqu'un pourra m'aider !
Merci d'avance.
A+
Pioup
3 réponses
requete = "UPDATE [Demande d'Intervention] SET [Statut_Intervention] = '" & Statut & "' WHERE ID_Intervention = " & ID
Si c'est un chaîne de caractère il te faut mettre ' puis " avant le & et de même pour enquoter après ton deuxième &. " puis '.
Si c'est un chaîne de caractère il te faut mettre ' puis " avant le & et de même pour enquoter après ton deuxième &. " puis '.
Pense que la requête que tu construit est une chaine de caractère. Du coup, pour afficher la valeur de tes variables dans la requête, il faut faire de la concaténation de chaine.
Ceci devrait suffire :
Cette méthode fonctionne que la variable soit de type numérique ou chaine de caractère.
Ceci devrait suffire :
requete = "UPDATE [Demande d'Intervention] SET [Statut_Intervention] = " & Statut & " WHERE ID_Intervention = " & ID
Cette méthode fonctionne que la variable soit de type numérique ou chaine de caractère.
Salut,
Merci pour ta réponse !
En revanche, j'ai un problème en utilisant ta synthaxe et je ne sais pas d'où cela vient.
J'ai une "erreur de synthaxe (opérateur absent) dans l'expression "En Cours" ", sachant que "En cours" est la valeur de la variable statut dans ce cas.
Quelqu'un sait d'où vient le probleme ?
A+
Pioup
Merci pour ta réponse !
En revanche, j'ai un problème en utilisant ta synthaxe et je ne sais pas d'où cela vient.
J'ai une "erreur de synthaxe (opérateur absent) dans l'expression "En Cours" ", sachant que "En cours" est la valeur de la variable statut dans ce cas.
Quelqu'un sait d'où vient le probleme ?
A+
Pioup
Ce sont des petites erreurs qui nous pourrissent bien la vie ^^
Donc penser:
Var string, enquotement '" & blabla & "'
var integer, enquotement " & blabla & "