查找power point动画步骤vba

查找power point动画步骤vba,vba,animation,powerpoint,Vba,Animation,Powerpoint,我有一个vba脚本,在power point演示文稿的幻灯片上进行演示时运行。在同一张幻灯片上,我有一个动画。当动画运行时,脚本在“后台”运行良好,但在动画的某个步骤中,我想更改vba脚本的运行方式。通过检查timeline对象或其他地方来检查动画已经运行了多远,或者在到达正确的步骤时触发事件,但是我没有找到任何东西 这是我目前的剧本(展示一个放射源,向各个方向发射辐射) 在我想要改变endx和endy的时候,我一直在寻找类似的东西 IF Activepresentation.slides(sl

我有一个vba脚本,在power point演示文稿的幻灯片上进行演示时运行。在同一张幻灯片上,我有一个动画。当动画运行时,脚本在“后台”运行良好,但在动画的某个步骤中,我想更改vba脚本的运行方式。通过检查timeline对象或其他地方来检查动画已经运行了多远,或者在到达正确的步骤时触发事件,但是我没有找到任何东西

这是我目前的剧本(展示一个放射源,向各个方向发射辐射)

在我想要改变endx和endy的时候,我一直在寻找类似的东西

IF Activepresentation.slides(slideid).timeline.activestep>=5 THEN
   dosomething()
End if
或者我能做点什么

Public Changed as boolean
Sub OnSlideShowAnimationStep( .... )
  IF currentstep >=5
     Changed = TRUE
  end if
end sub

然后,我可以检查绘制线中是否有更改,但我既找不到任何告诉我当前动画步骤的属性,也找不到在动画步骤上激发的任何事件。还有其他我应该去看的地方吗?

我不知道有什么事件或方法可以检查时间表上的哪个步骤或位置 但是你有一个黑客可以解决这个问题

在循环中时,始终可以检查形状的(左、上)位置。这会在动画运行时发生变化

但另一方面,您可以通过使用Effect对象的MoveTo函数手动迭代动画。


但是我自己没有用过。

如果动画是点击式的,你可以使用SlideShowWindow(1),View.GetClickCount


否则,您可以使用OnSlideShowNextBuild(ByVal Wn作为幻灯片窗口)计数

谢谢,但我正在检查的形状不会移动,它只会显示出来。-我尝试检查它的visible属性,但它总是返回true:-/
Public Changed as boolean
Sub OnSlideShowAnimationStep( .... )
  IF currentstep >=5
     Changed = TRUE
  end if
end sub