Evento Application.SlideShowNextSlide (PowerPoint)
Se produce inmediatamente antes de la transición a la siguiente diapositiva. Para la primera diapositiva, se produce inmediatamente después del evento SlideShowBegin.
Sintaxis
expresión. SlideShowNextSlide
(Wn)
Expresión Expresión que devuelve un objeto Application .
Parameters
Nombre | Obligatorio/opcional | Tipo de datos | Descripción |
---|---|---|---|
Wn | Obligatorio | SlideShowWindow | Ventana de presentación con diapositivas activa. |
Comentarios
Para obtener información sobre cómo usar eventos con el objeto Application, vea Procedimiento para usar eventos con el objeto Application.
Ejemplo:
En este ejemplo se determina la posición de la diapositiva de la diapositiva siguiente al evento SlideShowNextSlide. Si la siguiente diapositiva es tres, el ejemplo cambia el tipo de puntero a una pluma y el color de la pluma en rojo.
Private Sub App_SlideShowNextSlide(ByVal Wn As SlideShowWindow)
Dim Showpos As Integer
Showpos = Wn.View.CurrentShowPosition + 1
If Showpos = 3 Then
With ActivePresentation.SlideShowSettings.Run.View
.PointerColor.RGB = RGB(255, 0, 0)
.PointerType = ppSlideShowPointerPen
End With
Else
With ActivePresentation.SlideShowSettings.Run.View
.PointerColor.RGB = RGB(0, 0, 0)
.PointerType = ppSlideShowPointerArrow
End With
End If
End Sub
En este ejemplo se establece en cero una variable del contador global. Después, se calcula el número de formas en la diapositiva que sigue a este evento, se determina qué formas están animadas y se rellena una matriz global con el orden de animación y el número de cada forma.
Nota:
[!NOTA] La matriz creada en este ejemplo también se usa en el ejemplo del evento SlideShowNextBuild.
Private Sub App_SlideShowNextSlide(ByVal Wn As SlideShowWindow)
Dim i as Integer, j as Integer, numShapes As Integer
Dim objSld As Slide
Set objSld = ActivePresentation.Slides _
(ActivePresentation.SlideShowWindow.View _
.CurrentShowPosition + 1)
With objSld.Shapes
numShapes = .Count
If numShapes > 0 Then
j = 1
ReDim shpAnimArray(1 To 2, 1 To numShapes)
For i = 1 To numShapes
If .Item(i).AnimationSettings.Animate Then
shpAnimArray(1, j) = _
.Item(i).AnimationSettings.AnimationOrder
shpAnimArray(2, j) = i
j = j + 1
End If
Next
End If
End With
End Sub
Vea también
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.