VBA将Excel图表复制到Word中作为图片更改图表大小

我想创build一个macros从Excel复制图表,并将其粘贴到Word中作为图片(最好是增强型图元文件)。

我build立了一个Word模板文档,其中包含应插入图片的特定单元格中的书签。

然而,用我现在的代码,插入的图像太大了,把整个桌子都拧了。 我尝试了不同的图片选项(增强型图元文件,PNG等),但它们都有相同的结果。

当我尝试在表中使用PasteSpecial手动复制图表时,它保持原来的大小,这正是我想要的。

我有什么需要改变我的代码来获得?

 Sub CopyCharts2Word() Dim wd As Object Dim ObjDoc As Object Dim FilePath As String Dim FileName As String FilePath = "C:\Users\Name\Desktop" FileName = "Template.docx" 'check if template document is open in Word, otherwise open it On Error Resume Next Set wd = GetObject (, "Word.Application") If wd Is Nothing Then Set wd = CreateObject("Word.Application") Set ObjDoc = wd.Documents.Open(FilePath & "\" & FileName) Else On Error GoTo notOpen Set ObjDoc = wd.Documents(FileName) GoTo OpenAlready notOpen: Set ObjDoc = wd.Documents.Open(FilePath & "\" & FileName) End If OpenAlready: On Error GoTo 0 'find Bookmark in template doc wd.Visible = True ObjDoc.Bookmarks("Boomark1").Select 'copy chart from Excel Sheets("Sheet1").ChartObjects("ChartA").chart.ChartArea.Copy 'insert chart to Bookmark in template doc wd.Selection.PasteSpecial Link:=False, _ DataType:=wdPasteMetafilePicture, _ Placement:=wdInLine, _ DisplayAsIcon:=False End Sub 

是的,就是这样:

我replace了

 'insert chart to Bookmark in template doc wd.Selection.PasteSpecial Link:=False, _ DataType:=wdPasteMetafilePicture, _ Placement:=wdInLine, _ DisplayAsIcon:=False 

 wd.Selection.PasteSpecial Link:=False, _ DataType:=wdPasteMetafilePicture, _ Placement:=wdTight, _ DisplayAsIcon:=False 

这样,图表的大小保持不变,在Excel工作表中!