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

问题描述 投票:0回答:1

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

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

Sub displayPrevious()
    SendKeys ("{LEFT}")
End Sub

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

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

[我正在考虑的一种方法可能是,执行下一个或上一个,如果更改幻灯片只是不运行sendkeys

或者也许我认为这是错误的方式,并且可以找到更简单的解决方案?

vba powerpoint sendkeys
1个回答
0
投票

最终设法找到了一个(可行但不完美的)解决方案。

基本上只检查从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
© www.soinside.com 2019 - 2024. All rights reserved.