我正在尝试在 PowerPoint 演示文稿的所有幻灯片中设置一个计数器。计数器需要由所有幻灯片中的一个按钮控制,以增加其值。
我可以对一张特定的幻灯片执行此操作,但当我使用幻灯片母版执行此操作时,幻灯片放映模式下屏幕不会刷新。我必须退出幻灯片放映并再次进入才能看到更改。
幻灯片模式下不刷新的代码:
ctr = ctr + 1
ActivePresentation.Designs(1).SlideMaster.Shapes("Counter").TextFrame2.TextRange.Text = ctr
有效的代码(但仅适用于一张幻灯片,而不是演示文稿中的所有幻灯片):
ctr = ctr + 1
ActivePresentation.Slides(1).Shapes("Counter").TextFrame2.TextRange.Text = ctr
谢谢!
答案1
那直接插入‹编号›无需 VBA 即可进入文本框。这将自动更新。
或者直接点击幻灯片编号当光标位于文本框中时,在菜单栏的“插入”选项卡中
答案2
我遇到了同样的问题。我不知道该怎么做,但下面有一个解决方法。这将快速打开幻灯片,然后返回幻灯片,强制其更新。
Sub ForceScreenUpdate()
Dim lSlideIndex As Long
lSlideIndex = SlideShowWindows(1).View.CurrentShowPosition
ActivePresentation.SlideShowWindow.View.Exit
ActivePresentation.SlideShowSettings.Run
SlideShowWindows(1).View.GotoSlide lSlideIndex
End Sub