2012-02-08 3 views
1

Я хочу прочитать некоторые файлы excel из каталога, а затем открыть их в с VBA.Как читать определенные файлы в каталоге в excel VBA

Вот пример:
каталог: шаблон c:\temp
файла: это xxxxx0123.xls (ххххе представляют имена файлов).

Я пытаюсь использовать Application.FileSearch, но он не будет работать в Excel 2007. Есть ли у кого-нибудь хорошие предложения?

Заранее спасибо

+0

Что вам нужно делать с файлами? Там может быть лучшее решение, чем прохождение и открытие каждого из них. – Kittoes0124

ответ

6

Вы можете использовать DIR, чтобы найти файлы, соответствующие вашей модели, то этот код открывает эти файлы, захватывает их путь, и закрывает файлы снова

Код можно сделать рекурсивным, если вам необходимо искать в подпапках

Sub GetFiles() 
    Dim strFolder As String 
    Dim strFileName As String 
    Dim wb As Workbook 
    strFolder = "C:\temp" 
    strFileName = Dir(strFolder & "\*123.xls") 
    Do While Len(strFileName) > 0 
     Set wb = Workbooks.Open(strFileName) 
     Debug.Print wb.FullName 
     wb.Close False 
     strFileName = Dir 
    Loop 
End Sub 
+0

+1. Я никогда не мог понять, почему они удалили application.filesearch :) Кстати, поскольку пользователь использует Excel 2007, вы можете изменить «\ * 123.xls» на «\ * 123.xls *» –

+0

@SiddharthRout обычно я бы сделал это (и это стоило подняться так же, как и вы), но вопрос задал «.xls», – brettdj

Смежные вопросы