Lier des tables en VBA

Le
Francis SLAWNY
Bonjour
XP Pro SP3, Access 2003.

Je suis à la recherche d'une fonction lierTables(MonDossier)
où MonDossier est un dossier ne contenant que des classeurs Excel, chacun
des classeurs contenant une table.
L'effet de la fonction serait de lier toutes ces tables à la base en cours.

Merci d'avance.
FS
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Argyronet
Le #20291321
Bonjour,

Le mieux et le plus enrichissant pour vous serait d'essayer de la construire
vous-même...
Il vous faut une référence à FileSystemObjet pour parcourir l'ensemble des
fichiers du dossier ou bien à l'aide un Do/Loop jusqu'à ce que le Dir() vous
renvoie une chaîne vide sur l'occurence *.xls.
Pour chaque fichier trouvé (le nom de la table est le nom de la feuille à
lier), vérifier l'existence de la table à l'aide d'un DoCmd SelectObject
précédé d'un On Error Resume Next et terminé par un On Error Goto 0. Si
l'objet Err est <>0 alors lancer un DoCmd DeleteObject de cette table...
Pour chacun de ces fichiers, user alors un DoCmd.TransferSpreadSheet acLink...

Ex:
¯¯
DoCmd.TransferSpreadsheet
acLink,acSpreadsheetTypeExcel9,"Feuil1","C:Documents and
SettingsArgyronetMy DocumentsMyXLSMyXlsFile.xls",True

--
Argy
http://argyronet.developpez.com/
Créez des programmes avec Microsoft Access 2007 (ISBN 2742982442)
VBA pour Office 2007 (ISBN 2742983910)



"Francis SLAWNY" a écrit :

Bonjour
XP Pro SP3, Access 2003.

Je suis à la recherche d'une fonction lierTables(MonDossier)
où MonDossier est un dossier ne contenant que des classeurs Excel, chacun
des classeurs contenant une table.
L'effet de la fonction serait de lier toutes ces tables à la base en cours.

Merci d'avance.
FS








Publicité
Poster une réponse
Anonyme