Bonjour,

J'ai créé une macro afin de récupérer des informations dans plusieurs fichiers d'un même dossier.

La macro tourne correctement mais bloque à partir du 16ème fichier à traiter, qui pourtant est au même format que les autres

Des idées des ce qui bug ( Le Débogueur affiche le bug à la ligne 31 sur Workbooks.Open fichier.Path 'ouvrons le fichier' ) et comment arranger cela ? merci par avance

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
47
48
49
50
51
52
53
 
 
Sub Conso_()
'
Application.ScreenUpdating = False
 
Sheets("Feuil1").Cells.ClearContents
 
 
' Conso_ Macro
'
Dim appXL As Object
Dim fso As Scripting.FileSystemObject
Dim dossier As Scripting.Folder
Dim fichier As Scripting.File
Dim wbsource As Workbook
Dim ldest As Long
Dim lsource As Long, ncol As Long
Dim src As Worksheet, dst As Worksheet, tmp As Worksheet
Dim test As String
 
 
Set fso = New Scripting.FileSystemObject
Set dossier = fso.GetFolder("D:\XXXXXXXXX")
Set dst = ThisWorkbook.Sheets("Feuil1")
Set tmp = ThisWorkbook.Sheets("temp")
ldest = 1
For Each fichier In dossier.Files
    If Right(fichier.Name, 5) = ".xlsx" Or Right(fichier.Name, 4) = ".xls" Then
 
Workbooks.Open fichier.Path 'ouvrons le fichier'
        Set wbsource = Workbooks(fichier.Name)
        Set src = wbsource.Sheets("DB")
 
 
src.Range("A1:AI361").Copy tmp.Range("A1:AI361")
 
 
      For lsource = 2 To 361
            For ncol = 1 To 35
                dst.Cells(ldest, ncol) = tmp.Cells(lsource, ncol)
            Next
            ldest = ldest + 1
        Next
        wbsource.Close savechanges:=False
    End If
Next
 
Application.ScreenUpdating = True
 
 
 
End Sub