Powerpoint VBA:如何指定入口效果中浮动的方向

时间:2017-08-24 16:46:21

标签: vba powerpoint-vba

我正在尝试在Microsoft Office PowerPoint中使用VBA为图片添加浮动效果。

我希望动画中的浮动进入向下方向

这是我的代码:

Sub add_pic_float_in()


' Insert the Picture
Set myDocument = ActivePresentation.Slides(1)

myDocument.Shapes.AddPicture FileName:="C:\Users\forson\Pictures\Picture.svg", LinkToFile:=msoTrue, SaveWithDocument:=msoTrue, _
    Left:=a * 10, Top:=-1000, Width:=359.055, Height:=1284.803

' Crop the Image
    With myDocument.Shapes(1)
        .Name = "Picture 1"
        .PictureFormat.CropLeft = 140
        .PictureFormat.CropRight = 130
        .PictureFormat.CropTop = 650
    End With

' Create shape
Dim picture As Shape

Set picture = myDocument.Shapes(1)

' Create Effect
Dim floatin As Effect

' Set Effect to Picture

Set floatin = myDocument.TimeLine.MainSequence.AddEffect(Shape:=picture, effectId:=msoAnimEffectFloat)
        floatin.Timing.Duration = 1
        floatin.EffectParameters.Direction = msoAnimDirectionDown
        floatin.Timing.TriggerType = msoAnimTriggerWithPrevious

End Sub

但是,我遇到了这个错误:

"运行时错误":' -2147188160(80048240)':EffectParameters(未知成员):无效请求。"

当我删除行" floatin.EffectParameters.Direction = msoAnimDirectionDown"时,它会生成一个带动画的对象,但它不是"浮在"动画。

我试过看herehere,但我找不到解决方法。

1 个答案:

答案 0 :(得分:0)

effectId:=msoAnimEffectFloat设置为effectId:=msoAnimEffectDescend会创建一个向下浮动的动画。

无需指定.EffectParameters.Direction