如何将图表从Excel复制到PowerPoint?

有什么办法可以将excel电子表格中的图表复制到一个简报中, 保留原始格式并embedded数据 ? 已经有一个关于以编程方式复制粘贴图表的问题 。 但是,关于数据embedded没有任何说法

最大的问题是embedded数据。 据我所知,数据embedded需要从功率点开始重新创build图表。 (PS:通过embedded我不是指链接到一个外部的Excel文件。)

你需要做的就是调用PasteSpecial“Keep Source Formatting and Embed Workbook”。

在这里输入图像描述

假设您已经创build了图表,幻灯片,占位符等,并且已经复制图表并导航到目标幻灯片,并且您有一个对象,如PPTApp来表示PowerPoint.Application对象。

而不是使用Shapes.PasteSpecial方法,你可以这样做:

 PPTApp.CommandBars.ExecuteMso "PasteExcelChartSourceFormatting" 

这不会创build指向Excel文档的链接,它会在PowerPoint演示文稿中embedded文档的本地副本。 我想我明白这是你的要求。

从评论更新

有关ExecuteMso方法的文档:

http://msdn.microsoft.com/en-us/library/office/ff862419.aspx

包含每个Office应用程序的idMSO参数的可下载文档:

http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=6627

注意:如果您想在.ExecuteMso之后使用粘贴的图表执行某些操作,则可能需要检查该形状是否已被粘贴,因为.ExcecuteMso是asynchronous的(macros不知道何时完成)。 另一个问题显示你如何等待完成 。