通过VBA中的Effect对象给PowerPoint动态添加动画效果
如何通过VBA程序代码,给演示文稿PowerPoint中的对象动态的添加动画效果?下面是一个实例,希望对您有所启发。
本例:在当前演示文稿的第一张幻灯片中添加一个形状,并为该形状添加一种效果和一个动作。
Sub MyNewShapeAndEffect()'动态添加一个图形
Dim shpStar As Shape
Dim sldOne As Slide
Dim effNew As Effect
Set sldOne = ActivePresentation.Slides(1)
Set shpStar = sldOne.Shapes.AddShape(Type:=msoShape5pointStar, Left:=150, Top:=72, Width:=400, Height:=400)
Set effNew = sldOne.TimeLine.MainSequence.AddEffect(Shape:=shpStar, EffectId:=msoAnimEffectStretchy, Trigger:=msoAnimTriggerAfterPrevious)
With effNew
With .Behaviors.Add(msoAnimTypeScale).ScaleEffect
.FromX = 75
.FromY = 75
.ToX = 0
.ToY = 0
End With
.Timing.AutoReverse = msoTrue
End With
End Sub
若要引用现有的 Effect对象,请使用MainSequence(index),其中 index 是 Effect对象在Sequence集合中的编号。本示例更改第一个序列的效果并为该效果指定动作。
Sub MyChangeEffect()
With ActivePresentation.Slides(1).TimeLine _
.MainSequence(1)
.EffectType = msoAnimEffectSpin
With .Behaviors(1).RotationEffect
.From = 100
.To = 360
.By = 5
End With
End With
End Sub
不管幻灯片是否有动画,每张幻灯片中至少有一个 Effect对象。
本代码适合于开发者所借鉴。
很不错,找到组织了!
页:
[1]