Bonjour à toutes et à tous,
J'ai besoin pour mon travail de faire une synthèse avec une feuille excel "Récap"
et d'y copier plusieurs données provenant de plusieurs classeurs dans différents dossiers et sous dossiers.
J'ai cherché dans ce forum sans trouver (ou sans comprendre)ce que je voulais exactement. Quelques bout de code par ci par là, mais comme mon pseudo l'indique, j'ai du mal à fusionner tous ça.
Je précise que je travail sur une version d'excel 2003 voir 2000 sur certain poste, et je ne sais pas comment assurer la compatibilité entre les version d'excel.
Voici ce qui ce rapproche le plus de mon but, il faudrait l'adapter pour inclure les sous dossier. Je l'ai trouvé sur le net .
Merci d'avance pour votre aide précieuse qui j'en suis sur me fera évoluer.
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 '------------------------------------------------------------------------------ ' Macro qui permet de compiler les informations contenues dans ' différents fichier pour les regrouper dans un fichier récapitulatif ' Sélection d'un répertoire contenant les fichiers ' GCXL '------------------------------------------------------------------------------- Sub Creer_Recapitulatif_2() Dim sRep As String 'Répertoire ou filtre Dim sFichier As String Application.ScreenUpdating = False sRep = ChoisirRepertoire & "\" 'Boîte de dialogue pour choisir répertoire sFichier = Dir(sRep) Do While sFichier <> "" Workbooks.Open sRep & sFichier 'ouvrir le fichier ' Ici on récupère la valeur de la cellule A1 du fichier ThisWorkbook.Sheets(1).Range("A65000").End(xlUp).Offset(1, 0) = ActiveWorkbook.Sheets(1).Range("A1") ActiveWorkbook.Close savechanges:=True sFichier = Dir 'trouve le prochain fichier Loop Application.ScreenUpdating = True End Sub Function ChoisirRepertoire() As String Dim diaFolder As FileDialog ' Open the file dialog Set diaFolder = Application.FileDialog(msoFileDialogFolderPicker) diaFolder.AllowMultiSelect = False diaFolder.Show ChoisirRepertoire = diaFolder.SelectedItems(1) Set diaFolder = Nothing End Function
Cordialement
Partager