Salut à tous !
J'ai un petit soucis dans mon code mais je n'arrive pas à voir il est..
Le but du code est donc de lire les fichiers Excel contenu dans un dossier ainsi que toutes leurs feuilles (dans mon test, il y a deux fichiers contenant chacun 3 feuilles appellé "Table1", "Table2","Table3") et de les retranscrire dans une unique table ACCESS.
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 ' ----------------------------------------------------------------------------------------------------------------------------------------- ' IMPORTATION DE PLUSIEURS FEUILLES EXCEL, ' A PARTIR DE PLUSIEURS CLASSEURS ' --- Sub ImportExcelMulti(ByVal strChemin As String, ByVal varFeuilles As Variant, ByVal blnNoms As Boolean, ByVal strTable As String) 'On a crée la procédure, qui prend en compte différents attributs ' Déclaration des variables Dim strClasseur As Variant Dim varFeuille As Variant ' PROCEDURE D'IMPORTATION ' Parcourir tous les classeurs du dossier strClasseur = Dir(strChemin & "*.xlsx") strChemin1 = strChemin & strClasseur Do While Len(strClasseur) > 0 ' Pour chaque feuille de chaque classeurs en strChemin, on importe les données dans la strTable d'Access For Each varFeuille In varFeuilles DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel12Xml, strTable, strChemin1, blnNoms, varFeuille & "!" Next varFeuille ' Classeur suivant strClasseur = Dir Loop End Sub
En mode débogage, la procédure fait tout de correct, mais une fois que je regarde la table ACCESS crée, il n'y a que les feuilles du premier fichier, en double...
Si quelqu'un peut m'aider
Merci
Partager