Всем привет! Раньше для работы сразу с несколькими файлами (копирование, редактирование и т.д.) в одной папке использовал такой код:
Теперь условия изменились. В целевой папке содержатся не файлы, а много папок, в каждой из которых несколько файлов, которые надо обработать. Т.е. надо перебирать папки, а потом уже файлы внутри. Вложенный цикл должен получиться. Что-то вроде for each %переменная, обозначающая папку% in daway
Помогите пожалуйста его организовать.
Код |
---|
Dim abook As Workbook Set abook = ActiveWorkbook Dim daway As String, item As String Dim somebook As Excel.Workbook With Application.FileDialog(msoFileDialogFolderPicker) .ButtonName = "OK" .Title = "Выбери папку с файлами, которые надо перебрать" If .Show = 0 Then Exit Sub End If daway = .SelectedItems(1) End With item = Dir(PathName:=daway + "\*.xls*") Do Until item = "" Set somebook = Workbooks.Open(daway + "\" + item) 'Действия с книгой somebook.Close item = Dir Loop Set somebook = Nothing |
Теперь условия изменились. В целевой папке содержатся не файлы, а много папок, в каждой из которых несколько файлов, которые надо обработать. Т.е. надо перебирать папки, а потом уже файлы внутри. Вложенный цикл должен получиться. Что-то вроде for each %переменная, обозначающая папку% in daway
Помогите пожалуйста его организовать.