找回密码
 立即注册
搜索

快速合并多个ppt,可行!

1
回复
333
查看
[复制链接]

3

主题

11

帖子

84

幻币

江湖少侠

Rank: 2

积分
162
QQ
2019-2-22 08:09:54 显示全部楼层 |阅读模式
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Sub testNew()
Dim path, dataPath, inputFileName, outputFileName As String
Dim slideNum As Integer
path = Application.ActivePresentation.path
outputFileName = "合并.pptx"
Dim pptApp, pptInput, pptOutput, newSlide
Set pptApp = New PowerPoint.Application
pptApp.Visible = msoTrue
Set pptOutput = pptApp.Presentations.Open(path & "合并" & outputFileName)
Dim i, j As Integer
Dim inputFileNames() As String
ReDim inputFileNames(1)
dataPath = path & "材料"
inputFileName = Dir(dataPath & "*.ppt*")
Do Until inputFileName = ""
Set pptInput = pptApp.Presentations.Open(dataPath & inputFileName)
Sleep 2000
For j = 1 To pptInput.Slides.Count
pptInput.Slides(j).Copy
Sleep 200
pptOutput.Slides.Paste
Next j
pptInput.Close

inputFileName = Dir
Loop
'pptOutput.Slides(1).Delete
pptOutput.Save
pptOutput.Close
End Sub






[url=]上一封[/url] [url=]下一封[/url]
[url=]« 返回[/url]






100211vh3a2pxs8jvzccpc.png


以上方法可行,但是我觉得还是有点繁琐。是否有更快捷的方法,都在“材料”文件加内完成,运行代码的ppt也放到“材料”文件夹内。
PPT学习论坛
回复

使用道具 举报

2

主题

7

帖子

61

幻币

一流武者

Rank: 3Rank: 3

积分
215
QQ
2019-2-22 11:22:50 显示全部楼层
有没有这样的,一般工作时是好多分别做其中的一两页再汇总成一个,如果都按照模板规定做固定页数的情况也好搞,提取文件名对应的第几页就行了。但是实际做的时候可能不按照模板要求做,比如感觉模板中没有体现他所有的工作,就自己加了几页,这样的情况怎么处理?
PPT学习论坛
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册