Добрый день.
Помогите пожалуйста, у меня есть макрос, которым я создаю множество документов на основании данных из таблицы:
Код |
---|
Dim objWord As Object
Dim FileStart
Dim FileNew
adr = ThisWorkbook.Path
FileSt = adr & "\Шаблон.docx"
Set objWord = CreateObject("Word.Application")
n = Cells(Rows.Count, 14).End(xlUp).row
For i = 6 To n
'Заполнение шаблона в ворд
FileNew = adr & "\" & Cells(i, 2) & " Документ.docx"
Set objWord = CreateObject("Word.Application")
Set objDoc = objWord.Documents.Open(FileSt) 'Вот тут получается каждый раз по циклу открывается шаблон и тратиться время
objWord.Visible = True
objDoc.Bookmarks("ФИО").Range.InsertAfter Cells(i, 2) 'Вставка значения в закладку
objWord.ActiveDocument.SaveAs _
Filename:=FileNew, _
FileFormat:=wdFormatDocument, _
Password:="", _
AddToRecentFiles:=True, _
WritePassword:="", _
ReadOnlyRecommended:=False
objDoc.Close
objWord.Quit
Set objWord = Nothing
Next i
|
Проблема этого макроса в том, что каждый шаг в цикле у меня открывается шаблон Ворд, в него заполняются нужные значения, далее он сохраняется под определенным названием и закрывается и в следующем шаге цикла заново открывается шаблон Ворд и.т.д.
На открытие каждый раз шаблона тратиться время, можно ли как то сделать, что бы шаблон один раз отрылся, а далее на основании него создавалась бы копия документа? Пробовал метод Documents.Add, но он открывает пустой файл, а мне нужно копию.