How can I separate each slides from one PPT file? [Solved/Closed]

Report
Posts
3
Registration date
Monday June 4, 2018
Status
Member
Last seen
June 5, 2018
-
Posts
47370
Registration date
Monday February 1, 2010
Status
Moderator
Last seen
November 27, 2020
-
Hi Everyone.

I have a powerpoint file(Power point 2016) which has 100 page(slides). What I want is to automatically separate each slide to create 100 seperate powerpoint files with keeping the existing masterslide features, design and layout. Is there any way to do that easily ?

Thank you very much in advance

2 replies

Posts
47370
Registration date
Monday February 1, 2010
Status
Moderator
Last seen
November 27, 2020
9,745
To separate automatically you need a vba code

Perhaps that this will help:

https://www.rdpslides.com/pptfaq/FAQ01086_Break_a_presentation_up_into_several_smaller_presentations.htm

Good luck
Posts
3
Registration date
Monday June 4, 2018
Status
Member
Last seen
June 5, 2018

Thanks for answer. I run the VBA code. But the problem was, When it creates ppt files including one slide, it destroyed the design, layout according to the default slide features of powerpoint. I need exactly same slides. How can I solve that second problem then ?
Posts
47370
Registration date
Monday February 1, 2010
Status
Moderator
Last seen
November 27, 2020
9,745 >
Posts
3
Registration date
Monday June 4, 2018
Status
Member
Last seen
June 5, 2018

Perhaps that you can seek help from https://www.rdpslides.com/pptfaq/

Good luck
Posts
3
Registration date
Monday June 4, 2018
Status
Member
Last seen
June 5, 2018

Hello I found the answer and this is giving what I want to reach. For your informations.

Sub splitFiles()
Dim tempR As Presentation
Dim opres As Presentation
Dim L As Long
Dim oFolder As String
'requires v. 2010 or later
On Error Resume Next
Set opres = ActivePresentation
Set tempR = Presentations.Add
tempR.PageSetup.SlideSize = opres.PageSetup.SlideSize
oFolder = Environ("USERPROFILE") & "\Desktop\Files\"
MkDir oFolder
For L = 1 To opres.Slides.Count
opres.Slides(L).Copy
tempR.Windows(1).Panes(1).Activate
Call CommandBars.ExecuteMso("PasteSourceFormatting")
Call tempR.SaveCopyAs(oFolder & "Slide" & CStr(L) & ".pptx", ppSaveAsOpenXMLPresentation)
tempR.Slides(1).Delete
Next L
tempR.Saved = True
tempR.Close
End Sub
Posts
47370
Registration date
Monday February 1, 2010
Status
Moderator
Last seen
November 27, 2020
9,745
Thank you very much

Subscribe To Our Newsletter!

The Best of CCM in Your Inbox

Subscribe To Our Newsletter!