将另一本工作簿中的图表作为图像插入到Word文档中

时间:2018-08-13 11:50:21

标签: excel vba excel-vba ms-word word-vba

我有一个启用了宏的Excel 2010工作簿(“ Pilote.xlsm”),试图读入多个Excel工作簿(“ Ex01.xlsx”,“ Ex02.xlsx”,...)并复制图表(“定位”)到Word文档中,同时保持相同的方向(“人像”)。

似乎无法按照我尝试的方式进行。代码示例如下:

Function BasicWrite()
Dim MonWB As Workbook
Set wrdApp = CreateObject("Word.Application")
Set ExcelApp = New Excel.Application
Set wrdDoc = wrdApp.Documents.Add()
Set monWB = ExcelApp.Workbooks.Open("C:\foo\Ex01.xlsx")

wrdApp.Visible = True

wrdApp.Selection.TypeText Text:="VBA"
wrdApp.Selection.TypeParagraph

monWB.Activate
monWB.Charts("Target").CopyPicture

wrdApp.Selection.Paste

monWB.Close
End Function

这将导致在Word文档中复制正确的图表,尽管其格式为“横向”(宽度>高度),而原始图表为“纵向”(高度>宽度)。此更改使图表上的一些重要标签变得混乱。

当我将图表直接从宏工作簿(“ Pilote.xlsm”)复制到Word文档中时,不会发生此方向问题。从外部(“ Ex01.xlsx”)工作簿复制似乎是伪像。我在文档中找不到有关此主题的任何信息。

任何帮助将不胜感激。

0 个答案:

没有答案