Всем доброе утро,
Я ищу способ, позволяющий пользователю Excel создать документ Word (это уже работает для меня с библиотекой объектов Word), чтобы добавить объект изображения в этот документ Word и, наконец, чтобы персонализировать это изображение, программно назначив этому изображению изображение, хранящееся в Рабочем листе из Рабочей книги Excel, где все указано. Единственное, что я сделал, - это создал изображение в текстовом документе. Set Logo = doc.Shapes.addOLEControl("forms.image.1")
У меня два ограничения, о которых нужно помнить: 1 / Я хочу избежать сохранения изображения на любом диске , особенно из-за специальных разрешений сервера, 2 / Я решил иметь элемент управления изображением на листе (вместо простого изображения), следовательно, этот элемент управления ранее получает с помощью сценария VBA, lo go загружается пользователем через пользовательскую форму.
Хотя я думал, что это будет тот же метод, что и при хранении такого рабочего листа image назначается изображению MsForms.Control в UserForm (Set UserForm.Logo.Picture = ThisWb.Sheets("X").Img_perso.Picture
), этот метод, похоже, не работает. Либо, потому что:
- Слово do c подразумевается на другой стороне и может столкнуться с тупиком метода ActiveX.
- Или в этом Word подразумевается OLEObject do c?
Чтобы завершить свое «исследование», я попробовал несколько способов взаимодействия с созданным объектом изображения в Word, безуспешно повторяя объекты Fields.
Обновление: мне, наконец, удалось передать изображение через приложения, скопировав объект и затем вставив его в Word с помощью метода PastSpecial, либо путем вставки изображения, либо oleObject, но определение изображения действительно уменьшено, что совершенно непригодно для документ о качестве. Вот код:
ThisWorkbook.Sheets("System").Img_Logo.Copy
doc.range.PasteSpecial , , , , wdPasteShape
'Or to paste OLEObject
doc.range.PasteSpecial , , , , wdPasteOLEObject
Кроме того, кажется невозможным удаленно установить .top
, .left
или свойства размеров вставленного таким образом объекта. Если кто-то знает лучший способ сохранить качество изображения и разрешить решение для удаленных настроек свойств (от VBA Excel до Word): было бы здорово. Спасибо за внимание,