Bonjour à tous,
Je suis en train de faire une macro pour copier les données de l'onglet b de plusieurs classeurs et compiler l'ensemble des données vers un autre classeur sur une seule feuille.
En gros :
Prendre les données de l'onglet b des
Fichier 1 : onglet a, b, c
Fichier 2 : onglet a, b, c
Fichier 3 : onglet a, b, c
Fichier 4 : onglet a, b, c
Copier les données les unes à la suite des autres dans
Fichier 5 : onglet compilation
J'ai un soucis, quand je lance ma macro rien ne se passe. Je n'ai pas de message d'erreur mais cela ne fonctionne pas. Pourriez-vous m'éclairer sur le sujet ?
Merci d'avance,
Hugo
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:\Users\hfieve\Documents\Test compil macro"
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("positionnement-etude") 'sélectionne la feuille de données à importer positionnement-etude
WksNewSheet.Activate 'active cette feuille
WksNewSheet.Select
Range("A5:B120").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