tutto questo lo hai già fatto....

Private Sub Drive1_Change()

Dir1.Path = Drive1.Drive
End Sub

Private Sub Dir1_Change()
File1.Path = Dir1.Path
End Sub

per avere il percorso completo....

Private Sub File1_Click()
If Right(File1.Path, 1) = "\" Then
Text1.Text = File1.Path & File1.List(File1.ListIndex)
Else
Text1.Text = File1.Path & "\" & File1.List(File1.ListIndex)
End If
End Sub

nella file1 hai un elenco di file che puoi filtrare inizialmente
magari accettando solo file con una particolare
estensione o tutti.
Se vuoi ulteriormente selezionare dei file dalla file1 devi per forza
selezionarli singolarmente (se non sono tutti) magari ne ricavi il valore della listindex e lo depositi momentaneamente in una arrey
e poi in un ciclo vai a leggere il valore dell'item con
quell' index e lo depositi in una listbox o quello che vuoi.

Fammi sapere se hai risolto perchè non sono sicuro di aver capito
bene il tuo problema.
ciao.