bonjour,
pour répondre à ta question, mets le code que tu as adapté.
sinon, pour n'avoir que le nom des classeurs (sans doublons) et non le chemin complet
Sub listefichierrecursive()
a = lfr("c:\documents\", "*.xl*") 'à adapter
Range("A1").Resize(UBound(a) + 1) = Application.Transpose(a)
End Sub
Function lfr(rep, filtre, Optional ByRef dict, Optional n = 0)
If IsObject(dict) = False Then Set dict = CreateObject("scripting.dictionary")
Set fso = CreateObject("scripting.filesystemobject")
Set rep = fso.getfolder(rep)
For Each repf In rep.subFolders
lfr repf, filtre, dict, n + 1
Next repf
For Each f In rep.Files
fn = f.Name
If f.Name Like filtre Then
dict(f.Name) = 0
End If
Next f
If n = 0 Then lfr = dict.keys
End Function