¿Recorrer los archivos en una carpeta usando VBA?

Me gustaría recorrer los archivos de un directorio usando vba en Excel 2010.

En el bucle, necesitaré

el nombre de archivo yla fecha en que se formateó el archivo.

He codificado lo siguiente, que funciona bien si la carpeta no tiene más de 50 archivos, de lo contrario es ridículamente lento (necesito que funcione con carpetas con> 10000 archivos). El único problema de este código es que la operación para buscarfile.name lleva mucho tiempo.

Code que funciona pero es muuuuuy lento (15 segundos por 100 archivos):


Sub LoopThroughFiles()
   Dim MyObj As Object, MySource As Object, file As Variant
   Set MySource = MyObj.GetFolder("c:\testfolder\")
   For Each file In MySource.Files
      If InStr(file.name, "test") > 0 Then
         MsgBox "found"
         Exit Sub
      End If
   Next file
End Sub

Problema resuelto

Mi problema ha sido resuelto por la siguiente solución usandoDir de una manera particular (20 segundos para 15000 archivos) y para verificar la marca de tiempo usando el comandoFileDateTime.Teniendo en cuenta otra respuesta por debajo de los 20 segundos se reduce a menos de 1 segundo.

Respuestas a la pregunta(6)

Su respuesta a la pregunta