Show me a list of designs and which slides use them
Problem
Sometimes it's convenient to have a list of the designs (slide masters) used by a presentation and which slides use them.
This little VBA macro will give you that list.
Solution
Make sure the presentation you want to examine is the currently active presentation then run the macro below.
To keep it simple, we send all the output to the Immediate (or debug) window. Press Ctrl+G while in the VBA editor to make the Immediate window visible. You can select the text there and copy/paste it into Notepad or any other program if you want to hang onto or print the results.
Sub ListDesigns()
Dim oPres as Presentation
Dim oSld as Slide
Dim oDes as Design
Dim sText as String
Dim FileNum as Integer
Dim PathSep as String
#If Mac Then
PathSep = ":"
#Else
PathSep = "\"
#End If
Set oPres = ActivePresentation
sText = "=== DESIGNS in this presentation ===" & vbcrlf
For Each oDes in oPres.Designs
sText = sText & oDes.Name & vbCRLF
Next
sText = sText & "=== SLIDES and the Designs they rode in on ===" & vbCRLF
For Each oSld in oPres.Slides
sText = sText & "Slide:" & VbTab & oSld.SlideIndex _
& vbTab & oSld.Design.Name & vbCRLF
Next
FileNum = FreeFile
Open oPres.Path & PathSep & "REPORT.TXT" For Output As FileNum
Print #FileNum, sText
Close FileNum
MsgBox "Your report is saved as:" & vbCRLF _
& oPres.Path & PathSep & "REPORT.TXT"
#If Mac Then
'MsgBox "Your report is saved as:" & vbCRLF _
& oPres.Path & PathSep & "REPORT.TXT"
#Else
Call Shell("Notepad.exe" & " " & oPres.Path & PathSep & "REPORT.TXT", vbNormalFocus)
#End If
Set oPres = Nothing
End Sub
See How do I use VBA code in PowerPoint? to learn how to use this example code.