Bonjour,
Je désire exécuter une requête qui ajouterait les données de mes élèves dans une table.
Si l'élève n'existe pas on l'ajoute sinon on mets ces données à jour.
Rien de bien compliqué habituellement mais en VBA ça ne semble pas fonctionner.
J'obtient toujours l'erreur: "Erreur d'exécution '3137'. Point-virgule absent à la fin de l'instruction SQL."

Voici mon code:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
Set rs = CurrentDb.OpenRecordset("SELECT * FROM dbo_VUE_GATE_ELEVES WHERE Annee = " & intAnneeScolaire)
 
    While Not rs.EOF
        DoCmd.RunSQL ("INSERT INTO Eleve(Fiche, Nom, Prenom, Courriel) VALUES (rs!Fiche, '" & rs!Nom & "', '" & rs!Prenom & "', '" & rs!Courriel & "') ON DUPLICATE KEY UPDATE Nom = '" & rs!Nom & "', Prenom = '" & rs!Prenom & "', Courriel = '" & rs!Courriel & "'")
        rs.MoveNext
    Wend
J'ai également essayé la commande CurrentDb.Execute mais j'obtient la même erreur.

Merci pour votre aide!

P.S. Et oui j'ai essayé en ajoutant un point-virgule.