在PowerPoint VBA中以编程方式获取上一个/下一个动画



我正试图通过PowerPoint VBA中的动作按钮控制幻灯片动画。我设法使用sendKeys导航到当前幻灯片中的下一个和上一个动画。

动作按钮基本上运行displayPreviousdisplayNext宏,如下所示:

Sub displayPrevious()
SendKeys ("{LEFT}")
End Sub
Sub displayNext(ByRef oShp As Shape)
SendKeys ("{RIGHT}")
End Sub

但是,这会导致一个不需要的功能。在最后一个动画之后,下一个按钮切换下一个或上一个幻灯片。

我想做这件事的一种方法是,让下一个或上一个执行,如果是更改幻灯片,就不要运行sendkeys

或者也许我想错了,有一个更简单的解决方案吗?

最终找到了一个(有效但不完美(的解决方案。

基本上只是检查从getClickIndex播放的当前动画,并将上一个与0进行比较,将下一个与getClickCount进行比较。

Sub displayPrevious()
If ActivePresentation.SlideShowWindow.View.GetClickIndex <> 0 Then
SendKeys ("{LEFT}")
End If
End Sub
Sub displayNext()
If ActivePresentation.SlideShowWindow.View.GetClickIndex <> ActivePresentation.SlideShowWindow.View.GetClickCount Then
SendKeys ("{RIGHT}")
End If
End Sub

相关内容

最新更新