Sub testx()
Dim racine$
racine = "C:\Public\SAV NEW 2023"
tableau = RécursiveListDossier(racine, True)
With Cells(1, 1).Resize(UBound(tableau), 2)
.Value = tableau
.EntireColumn.AutoFit
End With
End Sub
'
'
Private Function RécursiveListDossier(dparent, Optional raz As Boolean = False) As Variant
Static IdX As Long: Static tbl(): Dim FSO As Object, Lparent As Object, SubFolder As Object
Set FSO = CreateObject("scripting.filesystemobject")
If raz Then IdX = 0: ReDim Preserve tbl(1 To 2, 1 To 1)
Set Lparent = FSO.GetFolder(dparent)
IdX = IdX + 1: ReDim Preserve tbl(1 To 2, 1 To IdX)
tbl(1, IdX) = Lparent.Path: tbl(2, IdX) = Lparent.Name
'boucles sur les sous dossiers
For Each SubFolder In Lparent.SubFolders
RécursiveListDossier SubFolder.Path ' on rappelle la fonction avec pour argument le chemin du sous dossier ainsi que l'extension et L qui est déjà peut être remplie
Next SubFolder
RécursiveListDossier = Application.Transpose(tbl)
End Function