Events supported by PowerPoint

The following table lists the events and their sequence of occurring in PowerPoint. It also notes the PowerPoint versions in which the event is supported.

Event Object Event Handler Signature and When does the event occur PowerPoint versions
AfterShapeSizeChange Application

AfterShapeSizeChange(ByVal Shp As Shape)

Occurs after a shape is resized. If multiple shapes are resized together, the event fires individually for each shape.

2016, 2013
AfterDragDropShape Application

AfterDragDropShape(ByVal Sld As Slide, ByVal X As Single, ByVal Y As Single)

Occurs after a shape is dropped on a slide.

2016, 2013
ColorSchemeChanged Application ColorSchemeChanged(ByVal SldRange As SlideRange)

Occurs after a color scheme is changed.

2016, 2013, 2010, 2007, 2003, 2002
NewPresentation Application NewPresentation(ByVal Pres As Presentation)

Occurs after a new presentation is created.

2016, 2013, 2010, 2007, 2003, 2002, 2000
AfterNewPresentation Application AfterNewPresentation(ByVal Pres As Presentation)

Occurs after a new presentation is created.

2016, 2013, 2010, 2007, 2003
PresentationOpen Application PresentationOpen(ByVal Pres As Presentation)

Occurs after an existing presentation is opened.

2016, 2013, 2010, 2007, 2003, 2002, 2000
AfterPresentationOpen Application AfterPresentationOpen(ByVal Pres As Presentation)

Occurs after an existing presentation is opened.

2016, 2013, 2010, 2007, 2003
PresentationBeforeClose Application PresentationBeforeClose(ByVal Pres As Presentation, Cancel As Boolean)

Occurs before a presentation is closed. The default response can be cancelled.

2016, 2013, 2010
PresentationClose Application PresentationClose(ByVal Pres As Presentation)

Occurs before a presentation is closed.

2016, 2013, 2010, 2007, 2003, 2002, 2000
PresentationCloseFinal Application PresentationCloseFinal(ByVal Pres As Presentation)

Occurs after a presentation is closed.

2016, 2013, 2010
PresentationBeforeSave Application PresentationBeforeSave(ByVal Pres As Presentation, Cancel As Boolean)

Occurs before a presentation is saved. The default response can be cancelled.

2016, 2013, 2010, 2007, 2003, 2002
PresentationSave Application PresentationSave(ByVal Pres As Presentation)

Occurs after a presentation is saved.

2016, 2013, 2010, 2007, 2003, 2002, 2000
PresentationPrint Application PresentationPrint(ByVal Pres As Presentation)

Occurs after a presentation is sent for printing.

2016, 2013, 2010, 2007, 2003, 2002, 2000
PresentationNewSlide Application PresentationNewSlide(ByVal Sld As Slide)

Occurs after a new slide is created.

2016, 2013, 2010, 2007, 2003, 2002, 2000
PresentationSync Application PresentationSync(ByVal Pres As Presentation, ByVal SyncEventType As Office.MsoSyncEventType) 2016, 2013, 2010, 2007, 2003
ProtectedViewWindowActivate Application ProtectedViewWindowActivate(ByVal PVW As ProtectedViewWindow)

Occurs after a protected view window is activated.

2016, 2013, 2010
ProtectedViewWindowDeactivate Application ProtectedViewWindowDeactivate(ByVal PVW As ProtectedViewWindow)

Occurs after a protected view window is deactivated.

2016, 2013, 2010
ProtectedViewWindowOpen Application ProtectedViewWindowOpen(ByVal PVW As ProtectedViewWindow)

Occurs after a protected view presentation is opened.

2016, 2013, 2010
ProtectedViewWindowBeforeEdit Application ProtectedViewWindowBeforeEdit(ByVal PVW As ProtectedViewWindow, Cancel As Boolean)

Occurs before a protected view presentation transitions to Edit mode (either programmatically or through UI). The transition to Edit mode can be cancelled.

2016, 2013, 2010
ProtectedViewWindowBeforeClose Application ProtectedViewWindowBeforeClose(ByVal PVW As ProtectedViewWindow, ByVal Reason As PpProtectedViewCloseReason, Cancel As Boolean)

Occurs before a protected view presentation is closed. The default response can be cancelled.

2016, 2013, 2010
SlideShowBegin Application SlideShowBegin(ByVal Wn As SlideShowWindow)

Occurs when a slide show starts. Is called for each slide show that starts.

2016, 2013, 2010, 2007, 2003, 2002, 2000
SlideShowEnd Application SlideShowEnd(ByVal Pres As Presentation)

Occurs when a slide show ends. Is called for each slide show that ends.

2016, 2013, 2010, 2007, 2003, 2002, 2000
SlideShowNextBuild Application SlideShowNextBuild(ByVal Wn As SlideShowWindow)

Occurs after the next build starts.

2016, 2013, 2010, 2007, 2003, 2002, 2000
SlideShowNextSlide Application SlideShowNextSlide(ByVal Wn As SlideShowWindow)

Occurs after showing the new slide.

2016, 2013, 2010, 2007, 2003, 2002, 2000
SlideSelectionChanged Application SlideSelectionChanged(ByVal SldRange As SlideRange)

Occurs after a slide or slide selection changes in any view except the Outline view.

2016, 2013, 2010, 2007, 2003, 2002
SlideShowNextClick Application SlideShowNextClick(ByVal Wn As SlideShowWindow, ByVal nEffect As Effect)

Occurs after the slide show window is clicked.

2016, 2013, 2010, 2007, 2003, 2002
SlideShowOnNext Application SlideShowOnNext(ByVal Wn As SlideShowWindow)

Occurs when the slide show navigates through next build within the current slide.

2016, 2013, 2010, 2007
SlideShowOnPrevious Application SlideShowOnPrevious(ByVal Wn As SlideShowWindow)

Occurs when the slide show navigates through previous build within the current slide.

2016, 2013, 2010, 2007
OnSlideShowPageChange   OnSlideShowPageChange(ByVal Wn As SlideShowWindow)

Occurs after showing the new slide.

This is an auto-macro and does not require any object to be declared. It is fired even when the presentation that hosts these event handlers is not in slide show mode.

2016, 2013, 2010, 2007, 2003, 2002, 2000
OnSlideShowTerminate   OnSlideShowTerminate(ByVal Wn As SlideShowWindow)

Occurs after terminating any slide show.
If a slide show had branched to another, the OnSlideShowTerminate() event also occurs when the second slide show ends.

This is an auto-macro and does not require any object to be declared. It is fired even when the presentation that hosts these event handlers is not in slide show mode.

2016, 2013, 2010, 2007, 2003, 2002, 2000
OnSlideShowNextBuild   OnSlideShowNextBuild(ByVal Wn As SlideShowWindow)

Occurs when the slide show navigates through next build within the current slide. This event is not fired when the slide show transitions to next slide.

This is an auto-macro and does not require any object to be declared. It is fired even when the presentation that hosts these event handlers is not in slide show mode.

2016, 2013, 2010, 2007, 2003, 2002, 2000
OnSlideShowPreviousBuild   OnSlideShowPreviousBuild(ByVal Wn As SlideShowWindow)

Occurs when the slide show navigates through previous build within the current slide. This event is not fired when the slide show transitions to previous slide.

This is an auto-macro and does not require any object to be declared. It is fired even when the presentation that hosts these event handlers is not in slide show mode.

2016, 2013, 2010, 2007, 2003, 2002, 2000
WindowActivate Application WindowActivate(ByVal Pres As Presentation, ByVal Wn As DocumentWindow)

Occurs after any application or document window is activated.

2016, 2013, 2010, 2007, 2003, 2002, 2000
WindowBeforeDoubleClick Application WindowBeforeDoubleClick(ByVal Sel As Selection, Cancel As Boolean)

Occurs before a shape is double clicked in normal or slide views.
Occurs before a slide is double clicked in slide sorter view or the notes page view. The default double-click response can be cancelled.

2016, 2013, 2010, 2007, 2003, 2002, 2000
WindowBeforeRightClick Application WindowBeforeRightClick(ByVal Sel As Selection, Cancel As Boolean)

Occurs before a shape, slide, notes page or text is clicked using the right mouse button. The default response can be cancelled.

2016, 2013, 2010, 2007, 2003, 2002, 2000
WindowDeactivate Application WindowDeactivate(ByVal Pres As Presentation, ByVal Wn As DocumentWindow)

Occurs after any application or document window is deactivated.

2016, 2013, 2010, 2007, 2003, 2002, 2000
WindowSelectionChange Application WindowSelectionChange(ByVal Sel As Selection)

Occurs after the selection of shape, slide or text is changed in the active document.

2016, 2013, 2010, 2007, 2003, 2002, 2000

Sequence of events

Some of the events are not available in some versions of PowerPoint.

Operation Event Sequence
Create a new presentation
  1. WindowActivate
  2. NewPresentation
  3. PresentationNewSlide
  4. WindowSelectionChange
Open an existing presentation
  1. PresentationOpen
  2. AfterPresentationOpen
  3. SlideSelectionChanged
  4. WindowSelectionChange
Save a presentation
  1. PresentationBeforeSave
  2. PresentationSave
Add a slide to the presentation
  1. PresentationNewSlide
  2. SlideSelectionChanged
  3. WindowSelectionChange
Starting a slide show
  1. SlideShowBegin
  2. SlideShowNextSlide
  3. SlideShowNextClick
Switch between presentations
  1. WindowActivate
  2. SlideSelectionChanged
  3. WindowSelectionChange
Navigate between slides within a presentation
  1. SlideSelectionChanged
  2. WindowSelectionChange

Look at Event Generator add-in here. It redirects the events from the add-in to the presentations.

Contact OfficeOne on email at officeone@officeoneonline.com. Copyright © 2001-2023 OfficeOne. All rights reserved.