使用粘贴格式将Excel图表导出到Word返回错误4605命令不可用



所以我正在努力了解我的代码有什么问题。我所做的只是在Excel工作簿中提取一些图表,并将它们导出到Word文档中,但如果我试图以某种方式粘贴它们,就会不断出现错误。这是我的代码:

Sub ExportingToWord_MultiplePages2()
'Declare Word Variables
Dim WrdApp As Word.Application
Dim WrdDoc As Word.Document
'Declare Excel Variables
Dim ChrtObj As ChartObject
'Create a new instance of Word
Set WrdApp = New Word.Application
WrdApp.Visible = True
'Create a new word document
Set WrdDoc = WrdApp.Documents.Add
'Loop through the charts on the active sheet
For Each ChrtObj In ActiveSheet.ChartObjects
'Copy the chart
ChrtObj.Chart.ChartArea.Copy
**'THIS WON'T RETURN AN ERROR**
With WrdApp.Selection
.PasteAndFormat Type:=wdChartPicture
End With
'**THIS WILL RETURN THE ERROR**
With WrdApp.Selection
.PasteAndFormat Type:=wdChartLinked
End With
'Clear the Clipboard.
Application.CutCopyMode = False
Next ChrtObj
End Sub

这是奇怪的部分,因为我提供了两种不同的粘贴方式,第一种是将其粘贴为图表图片,效果很好。但是,如果我尝试wdChartwdChartLinked,它将不起作用!我得到错误4605"命令不可用"。

有没有想过为什么会出现这种情况?

所以我找到了解决问题的方法,但我仍然不确定为什么PasteFormat不能用于链接图表。

如果我更换:

'**THIS WILL RETURN THE ERROR**
With WrdApp.Selection
.PasteAndFormat Type:=wdChartLinked
End With

通过以下操作,我不再收到错误

'**THIS WILL NOT RETURN AN ERROR**
With WrdApp.Selection
.PasteSpecial Link:=True, DataType:=wdPasteOLEObject
End With

我想这与图表的格式有关,但我仍然觉得奇怪的是,我可以使用PasteFormat将其粘贴为图片,但不能粘贴为链接图表。

相关内容

最新更新