Everyone wants to have the option to Reset Animations without exiting the Slide Show.
All of the code and files are going to be shown in the Article.
Please take a look at my functions and I will explain along the way.
Public Function actual() As Integer
actual = SlideShowWindows(1).View.CurrentShowPosition
Public Function rangeSlides(indice As Integer) As Boolean
' Counts how many Slides the Presentation currently has.
If indice <= 0 Or indice > ActivePresentation.Slides.Count Then rangeSlides = False Else rangeSlides = True
Public Function scene(Optional ByVal numSlide As Integer = 0) As Slide
If Not rangeSlides(numSlide) Then numSlide = actual
' Checks on which Slide the player currently is.
Set scene = ActivePresentation.Slides(numSlide)
Actual is just a Shortcut, not much to explain there. For rangeSlides I used a simple count method; note that it counts ALL of the Slides and the order it's the same as shown in PowerPoint, it's not like in VBA, where if you have 20 Slides and erase 1, Slide 19 is still considered 20. Last but not least, Sceneis a combination of two shortcuts, with an If statement that dictates that if a Slide number is not specified then the number is the currently active Slide.
As for the Macro itself:
Public Sub ResetAnimations()
' Resets all of the animations of all of the Slides in the Presentation.
For i = 1 To ActivePresentation.Slides.Count
.Hidden = msoTrue
.Hidden = msoFalse
The Macro is pretty self-explanatory for the most part. It counts the slides in the presentation and hides/shows all of them, causing them to restart the objects animations in them.
If You want to quickly test the functions/macro. Here's a sample file I made. Reset Macro.pptm
Please feel free to modify the functions, or the macro itself to your liking, and thanks for reading the article.