Bonjour,

Je souhaite créer un code VBA permettant d'ouvrir un nombre "x" de fichiers excel afin de copier/coller des données dans un fichier récap.
Tous les fichiers sont au même endroit, sauf le fichier "synthèse".

Pour cela, j'ai déjà écrit ça, mais lors de l'exécution, VBA se bloque à la ligne "Fichier = Dir(Chemin & "*.xls")"en m'indiquant une erreur de type 52.

Quelqu'un peut-il m'aider. Je reste à disposition si besoin de plus d'informations ou de fichier.

Merci d'avance.

Code :

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
Option Explicit
 
Sub Compilation()
 
Dim Fichier As String
Dim Chemin As String
Dim ClasseurSource As Workbook
 
Application.DisplayAlerts = False 'Evite les messages d'Excel
Application.EnableEvents = False 'Evite l'exécution éventuelle de macros liées aux fichiers ouverts
 
Chemin = (Application.Path & "J:\Alpine\Grille maquette temps\essai\feuilles de saisie\") 'Chemin du répertoire contenant les fichiers
Fichier = Dir(Chemin & "*.xls")
 
Do While Fichier <> ""
    Set ClasseurSource = Workbooks.Open(Chemin & Fichier)
    ClasseurSource.Worksheets("Feuil2").Select 'nom de la feuille source (commune à tous les fichiers sources)
    Range("A49:AI61").Select
    Range("A4").Activate
    Range(Selection, Selection.End(xlDown)).Select 'selection de la zone à copier
    Selection.Copy
    ThisWorkbook.Activate
    Sheets("Bdd_hres").Select
    ActiveSheet.Paste
    ClasseurSource.Close
    Fichier = Dir
Loopu
 
Application.EnableEvents = True
Application.DisplayAlerts = True
 
End Sub