[access 2003, VBA ] erreur d'execution 3137
Résolu/Fermé
Milyshyn
Messages postés
38
Date d'inscription
jeudi 24 janvier 2008
Statut
Membre
Dernière intervention
16 février 2010
-
30 janv. 2008 à 10:11
laetitia02 Messages postés 424 Date d'inscription jeudi 24 janvier 2008 Statut Membre Dernière intervention 12 mars 2009 - 30 janv. 2008 à 10:49
laetitia02 Messages postés 424 Date d'inscription jeudi 24 janvier 2008 Statut Membre Dernière intervention 12 mars 2009 - 30 janv. 2008 à 10:49
A voir également:
- [access 2003, VBA ] erreur d'execution 3137
- Erreur 0x80070643 - Accueil - Windows
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
- Erreur 1001 outlook - Accueil - Bureautique
- Erreur 38 free ✓ - Forum Mobile
- Erreur d'execution 13 vba ✓ - Forum Programmation
5 réponses
tarek_dotzero
Messages postés
817
Date d'inscription
jeudi 19 juillet 2007
Statut
Membre
Dernière intervention
12 avril 2022
121
30 janv. 2008 à 10:26
30 janv. 2008 à 10:26
Salut,
Je pense que vous avez plusieurs erreurs:
1. Pour access il faut toujours un ";" à la fin de la requete, cette erreur est dans:
Set rst4 = CurrentDb.OpenRecordset(" select id_groupe from groupe_details ;")
^
2. Pour la deuxième requete: il n'y a pas de "Wher" dans une requete de type "insert into" cela doit generer une erreur, Pour la corriger deux cas figurent:
a. Si vous voulez inserer dans la table une nouvelle ligne: vous devez mettre
insert into groupe(id_group,nom_groupe,liste_compte) values (" & rst4!id_groupe & ", '" & groupe & "','" & strlist & "');
b. Vous voulez faire une mise à jour:
Update groupe set nom_groupe = '" & groupe & "' and liste_compte= '" & strlist &"' where id_groupe=" & rst4!id_groupe & ";"
Bon courage.
Je pense que vous avez plusieurs erreurs:
1. Pour access il faut toujours un ";" à la fin de la requete, cette erreur est dans:
Set rst4 = CurrentDb.OpenRecordset(" select id_groupe from groupe_details ;")
^
2. Pour la deuxième requete: il n'y a pas de "Wher" dans une requete de type "insert into" cela doit generer une erreur, Pour la corriger deux cas figurent:
a. Si vous voulez inserer dans la table une nouvelle ligne: vous devez mettre
insert into groupe(id_group,nom_groupe,liste_compte) values (" & rst4!id_groupe & ", '" & groupe & "','" & strlist & "');
b. Vous voulez faire une mise à jour:
Update groupe set nom_groupe = '" & groupe & "' and liste_compte= '" & strlist &"' where id_groupe=" & rst4!id_groupe & ";"
Bon courage.
laetitia02
Messages postés
424
Date d'inscription
jeudi 24 janvier 2008
Statut
Membre
Dernière intervention
12 mars 2009
129
30 janv. 2008 à 10:41
30 janv. 2008 à 10:41
bonjour
dans les requete en vb il n y a pas besoin de ";" comme le dit precedement tarek_dotzero, l erreur viens du currentdb il faut d'abord faire
dim mabase as database
dim req as string
req="select id_groupe from groupe_detail"
set rst4=mabase.openrecordset(req)
req="update groupe set nom_groupe='" & groupe & "' and liste_compte='" & strlist & "' where id_groupe='" & rst4!id_groupe & "'"
docmd.runsql(req)
voila
dans les requete en vb il n y a pas besoin de ";" comme le dit precedement tarek_dotzero, l erreur viens du currentdb il faut d'abord faire
dim mabase as database
dim req as string
req="select id_groupe from groupe_detail"
set rst4=mabase.openrecordset(req)
req="update groupe set nom_groupe='" & groupe & "' and liste_compte='" & strlist & "' where id_groupe='" & rst4!id_groupe & "'"
docmd.runsql(req)
voila
tarek_dotzero
Messages postés
817
Date d'inscription
jeudi 19 juillet 2007
Statut
Membre
Dernière intervention
12 avril 2022
121
30 janv. 2008 à 10:43
30 janv. 2008 à 10:43
Salut,
Merci pour corriger mon erreur. D'habitude j'utilise doCmd.runSQL et je mettais tjrs le ";", mais j'espere que j'ai raison dans la deuxième partie.
Merci pour corriger mon erreur. D'habitude j'utilise doCmd.runSQL et je mettais tjrs le ";", mais j'espere que j'ai raison dans la deuxième partie.
Milyshyn
Messages postés
38
Date d'inscription
jeudi 24 janvier 2008
Statut
Membre
Dernière intervention
16 février 2010
3
30 janv. 2008 à 10:43
30 janv. 2008 à 10:43
salut,
Pour ma part on me tutoie...
c'est parfait la requete marche à merveille...merci beaucoup
Pour ma part on me tutoie...
c'est parfait la requete marche à merveille...merci beaucoup
Set rst4 = CurrentDb.OpenRecordset(" select id_groupe from groupe_details ;") insert into groupe(id_group,nom_groupe,liste_compte) values (" & rst4!id_groupe & ", '" & groupe & "','" & strlist & "');
Milyshyn
Messages postés
38
Date d'inscription
jeudi 24 janvier 2008
Statut
Membre
Dernière intervention
16 février 2010
3
30 janv. 2008 à 10:47
30 janv. 2008 à 10:47
Set rst4 = CurrentDb.OpenRecordset(" select id_groupe from groupe_details ;") CurrentDb.Execute "insert into groupe(id_groupe,nom_groupe,liste_compte) values (" & rst4!id_groupe & ", '" & groupe & "','" & strlist & "'); "
Voila la syntaxe exacte. Je n'ai pas eu besoin d'utiliser docmd.runsql...
POurquoi???? cela changer quelque chose ?
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
laetitia02
Messages postés
424
Date d'inscription
jeudi 24 janvier 2008
Statut
Membre
Dernière intervention
12 mars 2009
129
30 janv. 2008 à 10:49
30 janv. 2008 à 10:49
non je ne pense pas au moins tu n as pas besoin de mettre de ligne supplémentaire