Puoi fare esattamente come stai facendo ma invece di usare un listbox usa una stringa separando i nomi dei file con un carattere particolare, poi su quella stringa usi la funzione split
es:
Private Sub Form_Load()
estensione = "jpg"
Thefile$ = Dir$("D:\Foto Donne\*." & estensione)
While Thefile$ <> ""
' scrivi in una listbox ad esempio
stringa = Thefile$ & "#"
Thefile$ = Dir$
Wend
stringa = split(stringa,"#")
End Sub
ecco qui il tuo array
Attenzione il metodo che stai utilizzando però prende in considerazione solo i file ".jpg"
se volessi trovare tutti i file immagine dovresti usare il filesystemobject