宏复制图表Excel-Word更改图表外观

时间:2016-01-14 10:29:25

标签: excel vba excel-vba

我将Excel(2010)中的图表复制粘贴为Word中的图像。复制粘贴有效,但Word中的最终图表与原始图表不同,我手动复制粘贴(粘贴特殊图片)。

我试图更改粘贴中的DataType和副本中的Format,但结果始终相同。还有其他选择吗?

Sub ChartsToWord()

Dim WDApp As Word.Application
Dim WDDoc As Word.Document
Dim iCht As Integer
Dim Msg As String

Set WDApp = CreateObject("Word.Application")
Set WDDoc = WDApp.Documents.Add

For iCht = 1 To ActiveSheet.ChartObjects.Count
   ' copy chart as a picture
    ActiveSheet.ChartObjects(iCht).Chart.CopyPicture _
    Appearance:=xlScreen, Size:=xlScreen, Format:=xlBitmap


    WDApp.Selection.Range.PasteSpecial Link:=False, DataType:=wdPasteEnhancedMetafile, _
    Placement:=wdInLine, DisplayAsIcon:=False


   WDApp.Selection.MoveEnd wdStory
   WDApp.Selection.Move
Next
WDDoc.SaveAs ("C:\Temp\charts.docx")
WDDoc.Close ' close the document

' Clean up
Set WDDoc = Nothing
Set WDApp = Nothing

End Sub

1 个答案:

答案 0 :(得分:1)

尝试使用复制方法

复制 ChartObject
ActiveSheet.ChartObjects(iCht).Copy

尝试粘贴为Bitmap或PNG:

WDApp.Selection.Range.PasteSpecial Link:=False, DataType:=wdPasteBitmap, _
Placement:=wdInLine, DisplayAsIcon:=False

WDApp.Selection.range.PasteSpecial Link:=False, DataType:=14, Placement:=wdInLine, _
DisplayAsIcon:=False
相关问题