Bonjour à tous,
Après maintes recherches sur le web et ce forum, j'ai vu pas mal de sujets qui traitent de mon problème, mais les réponses proposées ne le résolvent pas
Je fais un import d'un fichier Excel sur Access (fichier Excel décomposé en 3 onglets dont seul le 1er m'intéresse) en créant une nouvelle table. A noter que le transfert ne se fait que pour un seul enregistrement.
Le transfert fonctionne à merveille, mais lorsque je veux le recommencer, je me rend compte qu'un processus Excel reste présent malgré la fermeture de mon appli et m'empêche de refaire le transfert...
Je vous mets mon code, j'espère que vous pourrez me dire ce qui cloche...
J'ai même essayé d'ajouter un code au début pour voir si l'appli Excel est déjà ouverte, mais ça n'a pas l'air de fonctionner...
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46 Private Sub Commande461_Click() Dim fichierexcel As Excel.Application Dim classeur As Excel.Workbook Dim feuille As Excel.Worksheet Dim qd As QueryDef 'Vérification si Excel est déjà ouvert Dim excel_ouvert As Boolean Set fichierexcel = Nothing excel_ouvert = False On Error Resume Next Set fichierexcel = GetObject("excel.application") On Error GoTo 0 If fichierexcel Is Nothing Then Set fichierexcel = CreateObject("Excel.Application") excel_ouvert = True End If 'Création table temporaire pour stocker les données reprises dans excel [...] 'Ouverture du fichier Excel Set classeur = fichierexcel.Workbooks.Open("D:\...\fichier.xls") fichierexcel.Visible = True 'Exécution d'une macro excel qui met en forme mes données fichierexcel.Run ("Export_new") 'Transfert des données DoCmd.TransferSpreadsheet acImport, , "temp", ("D:\...\fichier.xls"), True, "Export_access_new!A1:BL2" classeur.Close (False) Excel.Application.Quit Set feuille = Nothing Set classeur = Nothing Set fichierexcel = Nothing End Sub
Merci d'avance pour l'aide que vous pourrez m'apporter
Partager