Bonjour
Je veux créer une table dans une base de données ACCESS 2016 depuis un fichier Excel qui pilote le programme et y insérer un fichier txt.
Mon code fonctionne mais je trouve qu'il est très lent, car une session ACCESS s'ouvre, créee une table, referme ACCESS.
La macro prend bien 45 secondes environ pour une table de 300 lignes.... ce qui est très lent !!
Idéalement je souhaiterais qu'ACCESS ne s'ouvre pas du tout !!
Voici mon code:
Auriez vous une idée ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 Public Const NomBD = "INTEGRATION SOCIAL.ACCDB" Public Const CheminBD = "C:\Conso\" Sub ImportFichierTextdansTableAccess() 'importe le fichier texte dans une table Dim CheminFichierImport As String Dim SpecificationImport As String ' nom du fichier contenant les spécifications Dim strTableNom As String 'nom de la table à insérer 'Valeur des variables SpecificationImport = "ListeSocietes" CheminFichierImport = "C:\Conso\Liste.txt" 'chemin complet du fichier à importer strTableNom = "ListeSocietes" 'Effectuer l'opération dans ACCESS Dim oAppAccess As Access.Application Dim oFileAccess As New Access.Application Set oFileAccess = GetObject(CheminBD & NomBD) Set oAppAccess = CreateObject("Access.application") oFileAccess.DoCmd.TransferText acImportDelim, SpecificationImport, strTableNom, CheminFichierImport, True oAppAccess.Quit Set oAppAccess = Nothing Set oFileAccess = Nothing End Sub
Merci pour l'aide que vous voudrez bien m'apporter !
Partager