Prova con questo codice di esempio ed adattalo alle tue sigenze.
Fai ATTENZIONE agli attributi del comando DIR potresti non vedere i file nascosti ecc...

Marco

codice:
Public Sub Elenca_Cartelle()
    Percorso = "c:\"   ' Quì indichi il percorso dove vuoi avere il risultato delle cartelle.
    Nome = Dir(Percorso, vbDirectory)   ' Nome trova la prima cartella.
    Do While Nome <> ""   ' Avvio il ciclo.
       If Nome <> "." And Nome <> ".." Then
          If (GetAttr(Percorso & Nome) And vbDirectory) = vbDirectory Then ' controllo che sia una directory
             Debug.Print Nome   ' Stampo nel debug il nome della cartella
          End If
       End If
       Nome = Dir   ' Avanzo nel ciclo DO
    Loop
    MsgBox "Fine ricerca cartelle. Il risultato è stampato nella finestra debug"
End Sub
Public Sub Elenca_File()
    Percorso = "c:\*.*"   ' Quì indichi il percorso dove vuoi avere il risultato dei file.
    Nome = Dir(Percorso)   ' Nome trova il primo file.
    Do While Nome <> ""   ' Avvio il ciclo.
        Debug.Print Nome   ' Stampo nel debug il nome del file.
        Nome = Dir   ' Avanzo nel ciclo DO
    Loop
    MsgBox "Fine ricerca file. Il risultato è stampato nella finestra debug"
End Sub

Private Sub Command1_Click()
Call Elenca_Cartelle
Call Elenca_File
End Sub