Show me the transition time of each slide and total running time of the show
This macro will show you the transition time of each slide and the total running time.
By making a slight change (see comments in the code) you can have it show you the times for the entire presentation or for just the selected slides.
Sub TotalTimes() ' Copyright/Last Edited 03 March, 2017 by Stepen Rindsberg dba PPTools Dim oSld As Slide Dim strMessage As String Dim lngTotalTime As Long ' Use this to collect times for ALL slides: For Each oSld In ActivePresentation.Slides ' Or comment it out and uncomment this to get just the selected slides: ' For Each oSld in ActiveWindow.Selection.SlideRange strMessage = strMessage _ & CStr(oSld.SlideNumber) _ & vbTab _ & CStr(oSld.SlideShowTransition.AdvanceTime) _ & vbCrLf lngTotalTime = lngTotalTime + oSld.SlideShowTransition.AdvanceTime Next oSld ' Comment these out if you don't want to see them MsgBox strMessage MsgBox ("Total time: " & CStr(lngTotalTime)) ' And if you want to write the results to a text file: Dim FileNum As Integer Dim FileName As String ' Edit this to suit, especially if you use a Mac: ' As written, it'll pick up your TEMP folder location automatically: FileName = Environ$("TEMP") & "\" & "SlideTimings.txt" FileNum = FreeFile() Open FileName For Output As FileNum Print #FileNum, strMessage Print #FileNum, "Total time: " & CStr(lngTotalTime) Close #FileNum ' view the file in notepad Call Shell("Notepad.exe " & FileName, vbNormalFocus) ' or if you use a mac, comment that out and open the file in any text editor you like End Sub
See How do I use VBA code in PowerPoint? to learn how to use this example code.