Macro pour importer en automatique plusieurs fichiers dans 1
p
Bonjour
Quand tu ouvres un fichier il faut que tu indiques le chemin en plus du nom
Utilises les mêmes variables
Do While Nomfichier<> ""
'.
'.
fichier= Dir Ton code rectifié : Je ne me suis pas occupé de le simplifier
Option Explicit
Sub Importfiles()
Dim WbDest As Workbook, WbSource As Workbook
Dim WksNewSheet As Worksheet
Dim NomFichier As String, Chemin As String
Dim I As Long
Set WbDest = ActiveWorkbook
Chemin = "C:\PFT\Import\"
NomFichier = Dir(Chemin & "*.xls") 'définit les fichiers à importer en l’occurence tous les fichiers excel se trouvant dans ce répertoire
Do While NomFichier <> "" 'démarre la boucle jusqu’au dernier fichier disponible dans le répertoire
Set WbSource = Workbooks.Open(Chemin & NomFichier) 'ouvre le fichier actuel à importer
Set WksNewSheet = WbSource.Sheets("Feuil1") 'sélectionne la feuille de données à importer
WksNewSheet.Activate 'active cette feuille
WksNewSheet.Select
Range(Cells(1, 1), Cells(24, 24)).Select 'selection des données que l’on veut importer
Selection.Copy 'copie les données sélectionnées
WbDest.Activate 'retourne vers le fichier de départ
I = ActiveSheet.UsedRange.Rows.Count 'compte le nombre de lignes déjà utilisées dans ce fichier
Cells(I + 1, 1).Select 'sélection de la cellule où on veut coller les données (la première vide)
ActiveSheet.Paste 'colle les données
WbSource.Close 'ferme le fichier source
NomFichier = Dir 'va vers le fichier suivant à importer
Loop 'recommece la boucle avec le fichier suivant
WbDest.Activate
End Sub