Bonjour,

Je souhaite faire une macro sous Excel 2007 pour lister les fichiers d'un répertoire, ainsi que ceux des sous-répertoires.
Etant vraiment débutant dans l'écriture de macros, j'ai cherché sur le net et trouvé ceci :

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 ListeFic()
 
    Dim ScanFic As Office.FileSearch
    Dim NomFic  As Variant
    Dim Diag    As String
    Dim Nbr     As Long
    Dim I       As Long
 
    Set ScanFic = Application.FileSearch
 
    With ScanFic
        .NewSearch
        .LookIn = "D:"      ' adapter le nom du lecteur
        .SearchSubFolders = True
        .FileType = msoFileTypeAllFiles
        Nbr = .Execute
        Diag = Format(Nbr, "0 ""fichiers trouvés""")
 
        I = 0
        For Each NomFic In .FoundFiles
            I = I + 1
            Sheets("Feuil1").Cells(I, 1).Value = NomFic ' adapter le nom de la feuille
        Next
 
        MsgBox Diag
 
    End With
 
End Sub
Mais le problème est que ce code ne fonctionne que sur Excel 2003 ou les versions antérieures mais pas sur Excel 2007 car l'objet Filesearch n'existe plus.

Alors j'ai cherché une solution de contournement sur
http://silkyroad.developpez.com/vba/classefilesearch/

et j'ai essayé de faire ce qui est expliqué mais je n'ai pas trouvé le module Classefilesearch dans mon répertoire d'installation de Excel 2007.

Voila alors je ne sais pas comment faire. Si qn a essayé une autre solution sans passer par Filesearch pour Excel 2007, je suis preneur.

Merci d'avance.