Faire une boucle de INSERT INTO

IdrilElendil Messages postés 7 Date d'inscription samedi 8 avril 2006 Statut Membre Dernière intervention 20 août 2007 - 8 avril 2006 à 22:55
IdrilElendil Messages postés 7 Date d'inscription samedi 8 avril 2006 Statut Membre Dernière intervention 20 août 2007 - 9 avril 2006 à 16:02
Bonjour,

j'essaie de faire une boucle pour insérer plusieurs lignes de suite dans une table d'Access via une procédure en VBA.



For Indice = 1 To 3

MaBD.Execute ("INSERT INTO Table ([CléPrimaire], [Memo], [Nombre])" _

& "VALUES (Indice, 'toto', 12);")

Next



(CléPrimaire est de type numérique)



Il m'apparaît alors une erreur disant qu'il n'y a pas assez de paramètres.

Mais si je fais 3 fois MaBd.Execute..... avec 1, 2 et 3 à la place de
Indice, tout fonctionne, mais comme j'ai 5000 lignes à insérer ...
ça ne me tente pas du tout de les faire les unes après les autres
(surtout que j'ai une quinzaine de colonnes, et que je dois le faire
pour deux tables différentes avec des colonnes et valeurs différentes).



J'aimerais avoir une solution efficace et simple,

Merci d'avance


Ĩdril-Ëlendil

2 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
9 avril 2006 à 12:08
salut

ca devrait mieux fonctionner comme ça

For Indice = 1 To 3
MaBD.Execute ("INSERT INTO Table ([CléPrimaire], [Memo], [Nombre])" _
& "VALUES (" & Indice &", 'toto', 12);")
Next

Bon coding
0
IdrilElendil Messages postés 7 Date d'inscription samedi 8 avril 2006 Statut Membre Dernière intervention 20 août 2007
9 avril 2006 à 16:02
Merci beaucoup, ça marche!!!

Ĩdril-Ëlendil
0
Rejoignez-nous