糖尿病康复,内容丰富有趣,生活中的好帮手!
糖尿病康复 > 将一个PPT文档按页分割成多个PPT文档的代码

将一个PPT文档按页分割成多个PPT文档的代码

时间:2018-08-08 18:53:12

相关推荐

将一个PPT文档按页分割成多个PPT文档的代码

1、打开需要分割的PPT文档(假设文件名为“原始文档.ppt”);2、键入Alt+F11切换到VBA编辑环境,然后选择菜单“插入-模块”;3、在代码编辑区粘贴如下代码:

Option ExplicitSub SplitSlides()Dim oSrcPresentation As Presentation, oNewPresentation As PresentationDim strSrcFileName As String, strNewFileName As StringDim nIndex As Integer, nSubIndex As Integer, nTotalSlides As Integer, nBound As Integer, nCounter As IntegerDim fso As ObjectConst nSteps = 5 ' 修改这里控制每隔几页分割一次If nSteps <= 0 Then Exit SubSet fso = CreateObject("Scripting.FileSystemObject")Set oSrcPresentation = ActivePresentationstrSrcFileName = oSrcPresentation.FullNamenTotalSlides = oSrcPresentation.Slides.CountnCounter = 1For nIndex = 1 To nTotalSlides Step nStepsIf nIndex + nSteps > nTotalSlides ThennBound = nTotalSlidesElsenBound = nIndex + nSteps - 1End IfstrNewFileName = fso.BuildPath(fso.GetParentFolderName(strSrcFileName), _fso.GetBaseName(strSrcFileName) & "_" & nCounter & "." & fso.GetExtensionName(strSrcFileName))oSrcPresentation.SaveCopyAs strNewFileNameSet oNewPresentation = Presentations.Open(strNewFileName)If nBound < nTotalSlides ThenFor nSubIndex = nBound + 1 To nTotalSlidesoNewPresentation.Slides(nBound + 1).DeleteNextEnd IfIf nIndex > 1 ThenFor nSubIndex = 1 To nIndex - 1oNewPresentation.Slides(1).DeleteNextEnd IfoNewPresentation.SaveoNewPresentation.ClosenCounter = nCounter + 1Next nIndexMsgBox "结束!", vbInformationEnd Sub

4、修改代码中指定的分割页数;

5、键入F5运行,直到提示“完成!”

6、在源PPT所在目录下生成一系列命名为“原始文档_1.ppt”、“原始文档_2.ppt”……的新文档,即为分割之后的结果。

附注:原来想用更简单的一个API函数Slides.InsertFromFile,但是发现通过这个函数插入的PPT无法保留原始文档中的背景等信息。所以只好采用现在这样的另存为并删除多余幻灯片的“笨”办法了。

如果觉得《将一个PPT文档按页分割成多个PPT文档的代码》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。