VBA错误:所需的对象 – 在2007年工作正常,但不是在2013年

我有一个macros来将图表从Excel粘贴到PPT幻灯片。 该macros在2007年工作,但在2013年出现错误。我怎样才能解决这个问题,或迫使PPT打开2007年? (我在我的电脑上都有)。

它在第二行说“对象需要”。 (看起来像被粘贴的对象失去了它在幻灯片中的select或某物)

Sheet7.ChartObjects("d1c11").Copy pptSlide.Shapes.PasteSpecial(DataType:=ppPasteEnhancedMetafile).Select 

这是我如何打开PPT应用程序。

 Dim pptApp As PowerPoint.Application Set pptApp = New PowerPoint.Application pptApp.Visible = True Dim myPPT As PowerPoint.Presentation pptApp.Presentations.Open filename:=ppt_path 

谢谢!

您可能需要通过引用来添加最新的Powerpoint对象库。 另外,你可以像这样使用CreateObject:

 Dim pptApp, myPPT Set pptApp = CreateObject("PowerPoint.Application") pptApp.Visible = True Set myPPT = pptApp.Presentations.Open(FileName:=ppt_path) 
 Selection.CopyPicture Appearance:=xlScreen, Format:=xlPicture PPSlide.Shapes.PasteSpecial(ppPasteEnhancedMetafile).Select 

我有类似的错误,在2013年贴上2013年的PowerPoint文件,然后脚本停止,而在2007年,粘贴成功完成与控制按照定义的stream程。