Я пытаюсь скопировать несколько диаграмм Excel и вставить их в документ Word , на отдельных страницах, в качестве типа данных , связанный с OLEObject , но яполучение ошибки времени выполнения.
Ошибка времени выполнения '5343':
Word не может получить данные для ссылки {00020832-0000-0000-C000-000000000046.
Это код, который я использовал в прошлом, но буквально единственное, что я изменил в этом коде, это , чтобыдобавьте внешний цикл, который обрабатывает рабочие листы в активной рабочей книге. После добавления этого внешнего цикла он больше не работает, что немного странно для меня, потому что я действительно не вижу, что отличается.
Он работает для первого листа (активного в данный момент), но не работает, когда цикл переходит на следующий лист.Неважно, вставлен ли график со ссылкой или без нее.
Вот полный код для вашей справки:
Sub ExportingToWord_MultipleCharts()
'Declare Word Variables
Dim WrdApp As Word.Application
Dim WrdDoc As Word.Document
Dim SecCnt As Integer
'Declare Excel Variables
Dim ChrtObj As ChartObject
Dim Rng As Range
'Create a new instance of Word
Set WrdApp = New Word.Application
WrdApp.Visible = True
WrdApp.Activate
'Create a new word document
Set WrdDoc = WrdApp.Documents.Add
'Loop through each worksheet in the active workbook.
For Each WrkSht In ActiveWorkbook.Worksheets
'Loop through the charts on the active sheet
For Each ChrtObj In WrkSht.ChartObjects
'Copy the chart
ChrtObj.Chart.ChartArea.Copy
'Paste the Chart in the Word Document
With WrdApp.Selection
.PasteSpecial Link:=True, DataType:=wdPasteOLEObject, Placement:=wdInLine
End With
'Add a new page to the document.
WrdApp.ActiveDocument.Sections.Add
'Go to the newly created page.
WrdApp.Selection.GoTo What:=wdGoToPage, Which:=wdGoToNext
Next ChrtObj
Next WrkSht
End Sub
Возвращает ошибку в следующей строке :
'Paste the Chart in the Word Document
With WrdApp.Selection
.PasteSpecial Link:=True, DataType:=wdPasteOLEObject, Placement:=wdInLine
End With