【问题标题】:Trying to get ANY effect to work on my shape试图对我的体型产生任何影响
【发布时间】:2012-08-30 06:30:45
【问题描述】:
'declare Variables 
Dim osld As Slide
Dim oshp As Shape
Dim oeff As Effect

' SET objects
Set osld = ActivePresentation.Slides(7)
Set oshp = osld.Shapes("Star 1")
Set oeff = osld.TimeLine.MainSequence.AddEffect(Shape:=oshp, effectid:=msoAnimEffectChangeFillColor)

With oeff
.EffectParameters.Color2.RGB = RGB(Red:=10, Green:=45, Blue:=201)
.Timing.Duration = 2
End With

oshp.Left = oshp.Left + 100 ' Added to verify something was coming thru!

遗憾的是它仍然不起作用...它可以编译,但对幻灯片没有影响...

我已更新代码以显示您的建议

注意:填充颜色是在创建形状时定义的

我在形状的左侧值上加了一个 + 100,只是为了确保它实际上是通过的,它确实移动但不会改变颜色...

是否有“官方”列表说明哪些效果支持哪些参数?

感谢您与我一起度过这个难关! :)

【问题讨论】:

  • +1 Color1 属性在 PowerPoint 2010 中不存在,但 Color2 文档中给出的示例确实使用了 Color1 - 因此,无法编译.

标签: vba parameters powerpoint effect shapes


【解决方案1】:

我理解您的沮丧:正如我在评论中提到的,Color1 属性在 PowerPoint 2010 中不存在,但文档中为Color2 提供的示例确实使用了Color1——因此,它不编译!

正确的方法是给shape一个颜色,像这样:

oshp.Fill.ForeColor.RGB = RGB(Red:=0, Green:=0, Blue:=255)

这将是起始颜色。然后动画效果可以更改该颜色:

With oeff
    .EffectParameters.Color2.RGB = RGB(Red:=0, Green:=255, Blue:=255)
    .Timing.Duration = 2
End With

请注意,TimingEffect 的属性,而不是EffectParameters 的属性,如您问题中给出的代码中所示。

【讨论】:

  • 我已经尝试过这个并更新了我原来问题中的代码,它仍然不起作用。我终于通过添加 triggerType(文档中说这是可选的)从 addEffect 获得了一个脉冲,但它不会响应 color2 线,它只是将我的形状变成微红色,而不管 RGB 部分中给出的参数
  • “不起作用”是什么意思?还是不编译?我刚刚再次测试了我的代码,它工作得很好,消除了你原来问题中提到的错误。这可能是一个愚蠢的问题,但是:您是否尝试过真正播放您的幻灯片放映?因为变色动画只会在幻灯片播放时发生;它不会在普通幻灯片视图中发生。
  • 是的,它可以编译,但没有 triggerType 什么都不会发生(它们应该是可选的吗?)。使用 triggerType 时,color2 参数将被忽略,无论 RGB 设置如何,形状都会变为红锈色。然而使用了时间参数......是的,我正在幻灯片视图模式下查看它;)
  • 我又摆弄了一些,每次你给一个形状添加一个效果时,它都会把它堆叠在你之前做的上面(这可以在动画窗格中看到)。如果您调用添加效果的子几次,这可能会产生某种冲突......使用 oeff.delete 您可以将其删除,但您不能立即执行此操作,否则看起来添加的效果没有触发时间。在形状上删除/添加效果当然也会清除该堆栈......在调用效果几次后,它开始只是通过效果的一半
  • 没错,每次您调用.AddEffect 时,它都会添加在之前的任何内容之上的效果。这个问题现在非常混乱,评论链很长,你已经完全改变了问题文本。我建议你问一个新问题,描述这个新问题。我给出的答案确实解决了这个问题中最初陈述的问题——如果从一张新的幻灯片开始,对所讨论的形状没有影响。
猜你喜欢
  • 2018-10-14
  • 1970-01-01
  • 2012-01-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-26
  • 1970-01-01
  • 2020-09-17
相关资源
最近更新 更多