Здравствуйте форумчане, помогите с таким вопросом. У меня есть макрос, который копирует данные из одной книги во все книги, которые указаны в макросе, а как можно сделать так, чтобы просто прописать путь к папке и макрос выполнить действия для всех файлов которые находятся в этой папке?
| Код |
|---|
Sub Копировать_по_журналам()
Dim wb As Workbook, c As Range, arrWB(), w
arrWB = Array("Журнал1.xlsm", "Журнал2.xlsm", "Журнал3.xlsm", "Журнал4.xlsm", "Журнал5.xlsm", "Журнал6.xlsm", "Журнал7.xlsm", "Журнал8.xlsm")
With Application
.EnableEvents = False
.Calculation = xlCalculationManual
.ScreenUpdating = False
.Visible = False
For Each w In arrWB
Set wb = Workbooks.Open("E:\Сервер\Сервер 1\Сервер 2\Сервер 3\Сервер 4\РАБОЧИЕ\Журнал выездов" & "\" & w) ' Этот метод копирует данные в книги находящиеся по пути с главной
ThisWorkbook.Worksheets("Средства измерений").Cells.Copy wb.Worksheets("Средства измерений").Cells 'копируем все данные с активного листа
For Each c In wb.Worksheets("Средства измерений").Cells.SpecialCells(xlCellTypeFormulas, 23)
c.FormulaLocal = Replace(c.FormulaLocal, "[" & ThisWorkbook.Name & "]", "")
Next c
wb.Close (True)
Next w
.EnableEvents = True
.Calculation = xlCalculationAutomatic
.ScreenUpdating = True
.Visible = True
End With
MsgBox "Готово"
End Sub |