如何使用VBA删除MS Powerpoint中的所有转换?

时间:2019-04-23 20:18:25

标签: vba powerpoint powerpoint-vba

我们每周准备数以百计的Powerpoint文档,以供屏幕阅读软件使用,并且需要删除每个动画中的所有动画和过渡。我想编写一个Powerpoint加载项,在加载文件时自动执行此操作。我已经弄清楚了如何在导入为插件的auto_open()子中使用以下代码删除所有动画:

'Loop Through Each Slide in ActivePresentation
  For Each sld In ActivePresentation.Slides

    'Loop through each animation on slide
      For x = sld.TimeLine.MainSequence.Count To 1 Step -1

        'Remove Each Animation
          sld.TimeLine.MainSequence.Item(x).Delete           

      Next x

  Next sld

但是,我不确定如何使用此方法删除过渡。通过添加此行

,我基本上从视觉上解决了问题
sld.SlideShowTransition.Duration = 0

但是我想彻底删除过渡,因为它们会干扰客户的屏幕阅读软件。无法使用范式VBA(SlideShowTransition.Delete)删除对象。

有什么想法吗?

谢谢。

1 个答案:

答案 0 :(得分:2)

做到这一点:

sld.SlideShowTransition.EntryEffect=0