У меня макрос использует файл Ворда как шаблон, копирует и редактирует его, и я получал готовый ворд документ. Ворд документ находился в одной папке с файлом Экселя. Я вставил Ворд документ как объект в Ексель. Как теперь получить к нему доступ? (копировать и т.д). Раньше я использовал FileCopy (путь файла) (имя файла) и все получалось. Но документов Ворда становится больше и удобнее будет если будет только файл Ексель, а документы Ворда будут скрыты внутри него
Вы хоть напишите как внедряете...Если как объект в виде значка, то можно схитрить и открывать его, потом передавать управление в Word и делать все там(в этой статье описано чуть более подробно: Как из Excel обратиться к другому приложению (https://www.excel-vba.ru/chto-umeet-excel/kak-iz-excel-obratitsya-k-drugomu-prilozheniyu/)). А вот пример, как открыть файл из вставленного как значок на лист объекта и обратиться к нему:
Sub ChangeWorkdFromExcelSheet()
Dim v
Dim objWrdApp As Object, objWrdDoc As Object
Set v = ActiveSheet.DrawingObjects("word_object")
v = v.Verb(Verb:=xlOpen)
If v = True Then
On Error Resume Next
'пытаемся подключится к объекту Word
Set objWrdApp = GetObject(, "Word.Application")
If Not objWrdApp Is Nothing Then
Set objWrdDoc = objWrdApp.activedocument
'записываем слово "Привет" в документ из листа
objWrdDoc.Range.Text = "Привет и пока"
'закрываем документ Word c сохранением
objWrdDoc.Close True
End If
objWrdApp.Quit
End If
End Sub
имя объекта взял ниоткуда - "word_object". У это имя может быть другим.