Bonjour,
J'aimerai récupérer dans données de plusieurs onglets dans plusieurs fichiers pour les coller dans un fichier récap (appelé dans mon code "compilation consolidation.xls"). Les données doivent s'incrémenter dans un tableau les unes à la suite des autres.
Il me semble que j'arrive à boucler sur les différents dossiers, mais pas sur les onglets.
J'ai l'impression d'etre près du but mais je bloque. Si quelqu'un pouvait m'aider je lui en serais reconnaissant.
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 Sub Récup_données() pfile = ActiveWorkbook.Path & "\" & Range("b2") & "\" 'chemin du répertoire nfile = Dir(pfile) Dim i As Integer Dim LFinTab As Integer Dim CFinTab As Integer Application.ScreenUpdating = False Do Until nfile = "" For i = 1 To Worksheets.Count LFinTab = Range("B6000").End(xlUp).Row CFinTab = Range("Z9").End(xlUp).Column Workbooks("Consolidation compilation.xlsm").Worksheet("sheet1").Range("B" & LFinTab) = Workbooks(nfile).Worksheet("sheet" & i).Range("A6") Workbooks("Consolidation compilation.xlsm").Worksheet("sheet1").Range("C" & LFinTab) = Workbooks(nfile).Worksheet("sheet" & i).Range("A9") Workbooks("Consolidation compilation.xlsm").Worksheet("sheet1").Range("D" & LFinTab) = Workbooks(nfile).Worksheet("sheet" & i).Range(CFinTab & "8") Workbooks("Consolidation compilation.xlsm").Worksheet("sheet1").Range("E" & LFinTab) = Workbooks(nfile).Worksheet("sheet" & i).Range(CFinTab & "9") Workbooks("Consolidation compilation.xlsm").Worksheet("sheet1").Range("B" & LFinTab) = Workbooks(nfile).Worksheet("sheet" & i).Range("A6") Workbooks("Consolidation compilation.xlsm").Worksheet("sheet1").Range("C" & LFinTab) = Workbooks(nfile).Worksheet("sheet" & i).Range("A10") Workbooks("Consolidation compilation.xlsm").Worksheet("sheet1").Range("D" & LFinTab) = Workbooks(nfile).Worksheet("sheet" & i).Range(CFinTab & "8") Workbooks("Consolidation compilation.xlsm").Worksheet("sheet1").Range("E" & LFinTab) = Workbooks(nfile).Worksheet("sheet" & i).Range(CFinTab & "10") nfile = Dir() Next i Loop With Range("A2:U" & Range("B65000").End(xlUp).Row) .Value = .Value End With End Sub
Partager