Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > VBA Access
VBA Access Le forum pour les questions relatives au code VBA sous Access, et à son environnement de développement VBE.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/01/2011, 13h23   #1
Invité régulier
 
florian legrand
Inscription : mai 2010
Messages : 58
Détails du profil
Informations personnelles :
Nom : florian legrand

Informations forums :
Inscription : mai 2010
Messages : 58
Points : 7
Points : 7
Par défaut syntaxe update vba

Bonjour à tous,
Voila j'ai un projet à faire (réaliser une base de donnée d'anciens étudiants) et donc pour mettre à jour des données dans les tables j'utilise du code vba sous un bouton dans access et apparement j'aurais une erreur de syntaxe, j'ai essayé diverses syntaxes mais je n'arrive toujours pas à regler le probléme, voici ce que j'ai :

Code :
 DoCmd.RunSQL "Update Etudiant SET [Rue_etu]= " & Forms!Anciens_Etudiants!RueEtu & "  ,[Code_post_etu]=" & Forms!Anciens_Etudiants!CodePEtu & ",[Ville_etu]=" & Forms!Anciens_Etudiants!VilleEtu & ",[Statut]=' " & sit & " ' WHERE ([Nom_etu]=' " & Forms!Anciens_Etudiants!Nom & " ' & [Prenom_etu]=' " & Forms!Anciens_Etudiants!Prenom & " ' & [Annee_obtention_lic]=' " & Forms!Anciens_Etudiants!AnneeLicence & " ');"
merci beaucoup, je compte sur vous
seyflo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/01/2011, 17h38   #2
Membre habitué
 
Inscription : janvier 2006
Messages : 99
Détails du profil
Informations personnelles :
Âge : 38

Informations forums :
Inscription : janvier 2006
Messages : 99
Points : 101
Points : 101
Bonjour,

Oui, il y a quelques erreurs dans la chaine de caractere, notamment dans la clause Where où il faut utiliser "AND" au lieu de " & ".
Essayer avec :

Code :
1
2
 
DoCmd.RunSQL "Update Etudiant SET [Rue_etu]= '" & Forms!Anciens_Etudiants!RueEtu & "' ,[Code_post_etu]= '" & Forms!Anciens_Etudiants!CodePEtu & "', [Ville_etu]= '" & Forms!Anciens_Etudiants!VilleEtu & "', [Statut]= '" & sit & "' WHERE ([Nom_etu]= '" & Forms!Anciens_Etudiants!Nom & "') AND ([Prenom_etu]= '" & Forms!Anciens_Etudiants!Prenom & "') AND ([Annee_obtention_lic]= '" & Forms!Anciens_Etudiants!AnneeLicence & "');"
Un petit conseil : faites un debug.print de votre requête avant de l'exécuter, vous aurez ainsi le code SQL en entier et vous pourrez mieux voir. Autre possibilité : faites la requête avec l'éditeur, puis récupérez le SQL. Vous n'aurez plus qu'à changer les valeurs écrites en dur par vos variables formulaire.

cordialement,
Aegnor est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 19/01/2011, 16h34   #3
Rédacteur/Modérateur
 
Avatar de jpcheck
 
Jean-Philippe ANDRÉ
Inscription : juillet 2007
Messages : 7 863
Détails du profil
Informations personnelles :
Nom : Jean-Philippe ANDRÉ
Âge : 28
Localisation : France

Informations forums :
Inscription : juillet 2007
Messages : 7 863
Points : 10 743
Points : 10 743
Envoyer un message via MSN à jpcheck
salut,

une petite recommandation pour blinder ta saisie utilisateur, le code propose par Aegnor etant suffisant, penser a ajouter des double quotes en cas d'apostrophes dans tes valeurs a inserer :

Code :
1
2
 
DoCmd.RunSQL "Update Etudiant SET [Rue_etu]= '" & Replace(Forms!Anciens_Etudiants!RueEtu,"'","''") & "' ,[Code_post_etu]= '" & Replace(Forms!Anciens_Etudiants!CodePEtu,"'","''") & "', [Ville_etu]= '" & Replace(Forms!Anciens_Etudiants!VilleEtu,"'","''") & "', [Statut]= '" & Replace(sit,"'","''") & "' WHERE ([Nom_etu]= '" & Replace(Forms!Anciens_Etudiants!Nom,"'","''") & "') AND ([Prenom_etu]= '" & Replace(Forms!Anciens_Etudiants!Prenom,"'","''") & "') AND ([Annee_obtention_lic]= '" & Replace(Forms!Anciens_Etudiants!AnneeLicence,"'","''") & "');"

A verifier si les champs sont tous de type texte ou pas (notamment Annee_Obtention_Lic)
__________________
Pas de question technique par MP, je ne réponds pas

Mon perso ? Une vraie brute

Tutos Access, Tâches planifiées et Batch,Tables de Paramètres sous Access, Excel et Batch, Tâches planifiées et Access
jpcheck est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/01/2011, 14h28   #4
Invité régulier
 
florian legrand
Inscription : mai 2010
Messages : 58
Détails du profil
Informations personnelles :
Nom : florian legrand

Informations forums :
Inscription : mai 2010
Messages : 58
Points : 7
Points : 7
merci beaucoup, sa fonctionne parfaitement !
seyflo est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 23h40.


 
 
 
 
Partenaires

Hébergement Web