VBA Code: Remove Animations
Do you want to remove all animations from your slides? You may want to remove animations for a variety of reasons: maybe the sequencing is all messed up, and starting all over again seems like a great idea. But one look at your Animations task pane reveals tens or hundreds of animations on each slide. Is there a magic button somewhere in PowerPoint that can get rid of all animations all together?
Yes, you can do this easily in PowerPoint using some simple VBA code, as John Wilson of PowerPoint Alchemy explains. John adds that this only removes animations from individual slides, and not any animations added within the Slide Master.
First you need to know how you can run VBA scripts in PowerPoint -- then use this code. Explore the code a bit though since John has put in some helpful comments so that you can edit some values as required.
Sub Zap_Animations() Dim oeff As Effect Dim i As Integer Dim t As Integer Dim osld As Slide 'Remove normal animations For Each osld In ActivePresentation.Slides For i = osld.TimeLine.MainSequence.Count To 1 Step -1 osld.TimeLine.MainSequence(i).Delete Next i 'Remove triggers For i = osld.TimeLine.InteractiveSequences.Count To 1 Step -1 For t = osld.TimeLine.InteractiveSequences(i).Count To 1 Step -1 osld.TimeLine.InteractiveSequences(i).Item(t).Delete Next t Next i Next osld End Sub
Once you have placed this code in the VBA editor, close the window to get back to your PowerPoint slides. Before you proceed further, it's a great idea to save your file -- be sure to save as a PowerPoint Macro-Enabled Presentation with the PPTM file extension or PowerPoint Macro-Enabled Show with the PPSM extension. If you save as any of the other file formats, PowerPoint will offer to remove the macros, and then of course the Zap_Animations macro will not work! See our PowerPoint File Formats page to learn about these file formats.
Thereafter run the macro -- more info can be found in our Use Macros and Scripts in PowerPoint tutorial.
Thank you so much, John.
We tested this code using PowerPoint 2010 for Windows.
John Wilson is a Microsoft PowerPoint MVP who creates some cool add-ins for PowerPoint. He participates in the PowerPoint newsgroups and runs the PowerPoint Alchemy site. John is based out of UK, and loves to hear from PowerPoint users about concepts and ideas to create even more PowerPoint add-ins!
Nice script--I have been tasked with removing animations and transitions from large PPTs before converting to Adobe Presenter, and I found this modified script helpful. I found that some slides still had animations because their Master Slide had animations.
Dim osld As Slide
Dim i As Integer
For Each osld In ActivePresentation.Slides
For i = .Count To 1 Step -1
For i = osld.TimeLine.InteractiveSequences.Count To 1 Step -1
For t = osld.TimeLine.InteractiveSequences(i).Count To 1 Step -1
osld.SlideShowTransition.EntryEffect = ppEffectNone
' Remove Master Slide animations
For i = .Count To 1 Step -1
' Remove Master Slide Transitions
osld.Design.SlideMaster.SlideShowTransition.EntryEffect = ppEffectNone
Microsoft and the Office logo are trademarks or registered trademarks of Microsoft Corporation in the United States and/or other countries.