Страницы: 1
RSS
Внести изменения в объект Excel, внедренный в шаблон Word
 
Доброго времени суток!  Уважаемые ГУРУ, возможно ли ..??  
Макрос excel создает документ word из шаблона (решённый вопрос). Шаблон в свою очередь имеет вставленный объект excel. Вопрос, возможно ли макросом excel внести изменения в документе word т.е. в объекте excel, а именно внести данные в определенные ячейки объекта excel.
Спасибо!
 
Это вполне возможно, если запущен только один экземпляр приложения Excel, чтобы внедренный объект открылся в нем же.
Код
Dim wdDoc, xlEmbBk, nBooks

'wdDoc - ссылка на документ Ворд
nBooks = Workbooks.Count
wdDoc.Shapes(1).OLEFormat.DoVerb
If Workbooks.Count = nBooks + 1 Then
  Set xlEmbBk = Workbooks(Workbooks.Count)
Else
  MsgBox "Не удалось подключиться к внедренной книге", vbCritical
  Exit Sub
End If
'xlEmbBk - ссылка на внедренную книгу, ниже пример работы с ней
xlEmbBk.Sheets(1).Range("A1") = "hello world"
xlEmbBk.Sheets(1).Range("A2") = Time
'xlEmbBk.Close True 'не работает!
'для выхода из редактирования внедренной книги можно закрыть документ Word
wdDoc.Save
wdDoc.Close

 
Спасибо.
Это часть кода по созданию файла word.
Где мне применить Ваш код??
Код
Dim wd As Object, wdFormatDocument As Variant 
   Set wd = CreateObject("Word.Application")  
        wd.Visible = False 
    wd.documents.Open Filename:=Application.ThisWorkbook.Path & "\ИмяШаблона.dotx"             
        Sheets("Данные").Range("I29").Copy
        wd.ActiveDocument.Bookmarks.Item("A1").Range.Paste
        wd.ActiveDocument.Bookmarks.Item("A6").Range.Paste
        .....
        .....
        wd.ActiveDocument.Bookmarks.Item("A100").Range = Период 
        wd.ActiveDocument.Bookmarks.Item("A102").Range = ДатаПлюс 
      wd.Visible = True 
      wd.ActiveDocument.SaveAs Filename:=Application.ThisWorkbook.Path & "\ИмяФайла.docx", FileFormat:=wdFormatDocument          
      Application.StatusBar = "Всё готово!"
 
tgg, мой wdDoc - это Ваш wd.Activedocument
 
Спасибо!
Что доктор прописал!
Страницы: 1
Читают тему
Наверх