使用VBA或VSTO从PowerPoint演示文稿中提取嵌入式pdf

时间:2016-03-21 19:17:00

标签: vba vsto powerpoint powerpoint-vba

我需要在PowerPoint文件中提取嵌入的(不带链接)pdf文档。我可以使用ActiveSheet.OLEObjects从Excel中提取嵌入文件并检查ProgID。然后我将其复制到剪贴板并按照here所述进行保存 但由于某种原因,我无法在PowerPoint中找到与Excel.OleObject等效的内容。我认为最接近的是shape.OLEFormat.Object属性,但它不支持Copy方法。我检查了this但是如果有可能我需要一个VBA解决方案。

2 个答案:

答案 0 :(得分:0)

您需要做的是使用DoVerb打开嵌入式PDF:

ActivePresentation.Slides(1).Shapes(1).OLEFormat.DoVerb

从那里开始,根据您安装的软件,使用SendKeys或者在Adobe Reader上提供API来保存文件。

有关此内容的完整讨论,请阅读MSDN论坛上的主题: https://social.msdn.microsoft.com/Forums/en-US/235dde1a-13bb-4f07-8eb4-04ef1121a747/export-a-pdf-file-from-powerpoint-with-vba?forum=officegeneral

答案 1 :(得分:0)

我意外地注意到复制PowerPoint形状本身就可以了。