«Сервер выдал исключение» при вставке изображения в заголовок Word (VBA)

#excel #vba #ms-word #copy-paste

#excel #vba #ms-word #копировать-вставить

Вопрос:

В скрипте Excel vba я пытаюсь скопировать изображение из Excel и вставить его в заголовок моего Word со следующим кодом:

 Set objWord = CreateObject("Word.Application")
Set objDoc = objWord.documents.Add

Set WRng = objDoc.Sections(1).Headers(wdHeaderFooterPrimary).Range
WRng.Text = "Hello"     // Displays properly Hello in the header
Worksheets("Logos").Shapes("LogoToCopy").Copy    
WRng.Paste      // Server threw exception error
  

Однако я получаю ошибку времени выполнения «-2147417851», сервер выдал исключение.

Копирование / вставка текста работает нормально. Есть идеи, как скопировать изображение из Excel и вставить его в заголовок Word с помощью VBA в Excel? Спасибо.

Ответ №1:

Хорошо, наконец-то нашел это. Вставка должна быть заменена на PasteSpecial, а копирование — CopyPicture:

 Worksheets("Logos").Shapes("LogoToCopy").CopyPicture
WRng.PasteSpecial