Transfert et copie de données

Signaler
Messages postés
1
Date d'inscription
mercredi 16 mai 2007
Statut
Membre
Dernière intervention
17 mai 2007
-
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
-
bonjour,
je veux avoir si il y a un programme complet en VBA qui me permettra d'importer des données à partir d'un fichier excel dans une table accèss existant déjà sinon dans une autre nouvelle table puis de recopier mes données dans mon ancienne table

2 réponses

Messages postés
29
Date d'inscription
samedi 28 décembre 2002
Statut
Membre
Dernière intervention
19 mai 2007

il suffit d'ajouter chaque record dans la table en question.

1- copier les donnnees de la feuille excel dans un array (avec l'objet range, pas en faisant une boucle)
2- ouvrir une connexion avec la base de donnees
3- faire un boucle sur le array pour ajouter les records dans la table avec un script SQL utilsant "insert to"
4- fermer la connexion

pour ajouter les records dans la table, tu peux utiliser les objets DAO ou ADO (il faudra ajouter l'un ou l'autre comme reference), je prefere utiliser ADO.
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
19
Comme tu dois travailler avec Access à partir d'Excel ou vice versa, tu devras créer des variables-objets pour te "brancher" à l'application distante.

exemple si tu es sous Excel
Dim AccessApp As New Access.Application 
' Il faut créer une référence à Access dans le menu Outils / Références

À partir de là, tu peux utiliser les méthodes d'Access comme
DoCmd.TransferSpreadsheet
qui te permet d'envoyer une sélection dans une table sans devoir boucler quoi que ce soit.

Regarde ça dans l'aide. Il y a différents paramètres que tu peux utiliser selon tes besoins

MPi