【发布时间】:2017-09-17 23:21:30
【问题描述】:
详情: Mac Excel (2016) 复制到 Mac PPT (2016)
最后,我想遍历所有表格并将每个表格粘贴到 PPT 中自己的单独幻灯片上。
但首先我只是尝试从 Excel 中复制一个表格并粘贴到特定的 PPT 文件(不是全新的演示文稿)。
Sub OpenPPTandCopySelectedTable()
Dim PPT As PowerPoint.Application
Set PPT = New PowerPoint.Application
PPT.Visible = True
'Open the specific Template
PPT.Presentations.Open Filename:="/Users/MyNameHere/Downloads/FileName.pptx"
'Make Specific File the Active Presentation
Set PPPres = PPT.ActivePresentation
'Copy the Excel Table
Range("Table1[#All]").Copy
'Select PowerPoint Slide number 2
PPT.Slides(2).Select
'Paste Special
Application.ActiveWindow.View.PasteSpecial DataType:=ppPastePNG
End Sub
我做错了什么?任何帮助,将不胜感激。
【问题讨论】:
-
首先,请将 OPTION EXPLICIT 添加到代码模块的第一行。养成习惯,你的生活会更快乐。其次,您的 PasteSpecial 行使用“应用程序”,它将是 Excel,但我认为您希望它是 PowerPoint 应用程序。使用 PPT.ActiveWindow.View.PasteSpecial...
-
^^ 另外,我不经常使用 Powerpoint VBA(即从不),但
PPT.Slides(2).Select应该是PPPres.Slides(2).Select吗?我希望Slides是演示文稿的属性,而不是 Powerpoint 应用程序的属性。
标签: excel vba macos powerpoint