Guarda che, senza scomodorare il FSO, in VBA si usa la funzione Dir() che è davvero banale da usare, il link sotto mostra 3 metodi di ricerca usando Dir(), FSO e API:

How To Search Directories to Find or List Files
http://support.microsoft.com/kb/185476/en-us

e se hai VB6.0 trovi l'esempio WinSeek qui
C:\Programmi\Microsoft Visual Studio\MSDN98\98VS\1040\SAMPLES\VB98\Filects

Tutti gli esempi mostrano anche come usare la ricorsione per elaborare le sotto-cartelle.


Comunque, con il FSO puoi ottenere l'elenco dei files usando un ciclo For Each...

Ad esempio, il seguente script elimina tutti i file [*.tmp] da una cartella :
codice:
   Dim AFolder, AFile, AllFiles
   Dim FileSpec , NumFile, MyVar 

   On Error Resume Next  

   FileSpec = "TMP"
   Set AFolder = FSO.GetFolder(<percorso_cartella>)
   Set AllFiles = AFolder.Files   

   For Each AFile In AllFiles
        IF UCase(FSO.GetExtensionName(AFile.Path)) = FileSpec Then
         FSO.DeleteFile AFile
         NumFile = NumFile + 1
      End If
   Next

   If NumFile > 0 Then
      MyVar = MsgBox (NumFile & " file eliminati.")
   Else
      MyVar = MsgBox ("Nessun file eliminato.")
   End If