一、问题提出
有若干个PPT文件,文件名有一定的规律,但每个PPT只有一页,需要通过VBA自动合并PPT。(宣传家网上下载的党课PPT,不知为何是逐张下载,一张一个文件,因此需要合并)
二、解决思路
通过VBA逐张打开,再复制、粘贴到第一张上,并关闭当前PPT。
三、代码
Sub PPT_merge()
actfilename = "C:\Users\weiqi\Desktop\PPT\1199613_1.pptx"
Set PPTApp = CreateObject("powerpoint.application")
PPTApp.Visible = True
Set pptPres_0 = PPTApp.Presentations.Open(actfilename)
For i = 2 To 10
actfilename = "C:\Users\weiqi\Desktop\PPT\1199613_" & i & ".pptx"
Set pptPres_cur = PPTApp.Presentations.Open(actfilename)
pptPres_cur.Slides(1).Copy
pptPres_0.Slides.Paste
pptPres_cur.Close
Next
End Sub
actfilename是要操作的文件名
Set pptPres_0 = PPTApp.Presentations.Open(actfilename)是打开文件
pptPres_cur.Slides(1).Copy
pptPres_0.Slides.Paste
pptPres_cur.Close
分别是复制、粘贴、关闭。
文章介绍了如何通过VBA自动化合并一批只有一个页面的PPT文件。具体方法是创建PowerPoint应用程序对象,逐个打开文件,复制每份PPT的第一页,然后粘贴到目标文件中,最后关闭源文件。提供的VBA代码示例展示了这一过程。

2670

被折叠的 条评论
为什么被折叠?



