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 .

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
Merci d'avance pour votre aide précieuse qui j'en suis sur me fera évoluer.

Cordialement