Вобщем проблема не нова. Нашел в форуме пару постов про перебор, но так и не догнал че там к чему. Вобщем имеем каталог "С:\1" в нем куча др. каталогов и подкаталогов с ".xls" файлами. Нужно изменить данные определеной ячейки во всех файлах. Как это сделать в одном каталоге понятно:
Sub Обновить()
i = 1
a = Dir("c:\1\*.xls")
Do While a <> ""
'Открытие файла, изменение, пересчет, сохранение, закрытие>
If Range("B1").Value <> "" Then
Range("A1").Select
Selection.Copy
Workbooks.Open Filename:="c:\1\" & a
t = 1
For Each tList In Worksheets
Worksheets(t).Select
'Range("L40").Select
Range("L41").Select
If Range("L41").Value <> "" Then
ActiveSheet.Paste
End If
t = t + 1
'MsgBox "Имя рабочего листа: " & tList.Name
Next
End If
Application.CutCopyMode = False
ActiveWorkbook.Save
ActiveWindow.Close
'Windows("Обновление данных.xls ").Activate
a = Dir
i = i + 1
Loop
а вот чтоб во всех подкаталогах - не пойму.