Добавление макроса в файл Word из 1С


Добавление макроса в файл Word из 1С

Ниже представлен код 1С для добавления макроса в файл Word.

Макрос, который добавляется в данном примере в файл Word сохраняет его при закрытии в файл "НовоеИмяФайла "

Кусок кода, который расположен ниже можно встравлять в любое место когда, где необходимо будет добавление макроса в документ Word.

 

Расположенный ниже код - это всего лишь пример механизма вставки макросов в Word. На основании данного примера можно вставлять любые макросы в документы Word, путем модификации данного примера.

Данный пример может понадобится, например, для сохранения файла ворд в автоматическом режиме в какое-либо другое место после закрытия файла

 

 

 

Ворд = Новый COMОбъект("Word.Application");
ИмяФайла = "Тест файл1.doc";
НовоеИмяФайла = "Тест файл2.doc";
ФайлВорд = Ворд.Documents.Open(ИмяФайла ); //Открываем файл


Если Не ФайлВорд.ReadOnly Тогда
Попытка
ФайлВорд.VBProject.VBComponents("ThisDocument").CodeModule.DeleteLines(1,4);//Удаляем сначала весь код макроса
Исключение
КонецПопытки;


ФайлВорд.VBProject.VBComponents("ThisDocument").CodeModule.InsertLines(1, "Private Sub Document_Close()");
ФайлВорд.VBProject.VBComponents("ThisDocument").CodeModule.InsertLines(2, "FileName = """ + НовоеИмяФайла + """");
ФайлВорд.VBProject.VBComponents("ThisDocument").CodeModule.InsertLines(3, "ThisDocument.SaveAs(FileName)");
ФайлВорд.VBProject.VBComponents("ThisDocument").CodeModule.InsertLines(4, "End Sub");

//Word сам сохранит файл в нужное место
Иначе
Сообщить("Файл открыт только для чтения");
КонецЕсли;

Ворд.Visible = Истина;

Файлы обработки:

-