【发布时间】:2019-05-07 15:11:48
【问题描述】:
我的第一篇文章,如果我在这里遗漏了一些明显的东西,或者无意中重复了最近已经解决的问题,我们深表歉意。
所以我正在 PowerPoint 2016 中进行演示:
- 我的演示文稿保存为启用宏。
- 在宏安全中启用宏。
- 幻灯片将在大型显示器上 24/7 全天候播放。
- 在运行时,不会有人工交互。
- 幻灯片将播放长达一个月的时间,然后才会更新新的新闻/信息。
我想做的事:
所以位置 28 的幻灯片是 “自上次丢失时间事故以来的天数” 幻灯片。
如果手动触发,我的用于更新文本框的宏工作非常漂亮,我发布了这部分,以便您可以准确地看到我试图触发的内容。
Sub Countup()
Dim thedate As Date
Dim daycount As Long
Dim Icount As Integer
ActivePresentation.Slides(28).Shapes("LTAno").Select
thedate = "10/04/2017"
daycount = DateDiff("d", thedate, Now)
ActivePresentation.Slides(28).Shapes("LTAno").TextFrame.TextRange.Text = daycount
End Sub
上面——(这两部分在一个模块中)——是问题代码:
Public Sub OnSlideShowPageChange(ByVal SSW As SlideShowWindow)
If SSW.View.CurrentShowPosition = 28 Then
Call Countup
End If
End Sub
我使用 msgbox 检查以确保幻灯片 28 确实是幻灯片 28,并且弹出没有问题。所以我将 msgbox 行更改为 CALL 函数。
我认为这就是我的问题所在?我的头很痛......谁能指出我正确的方向? :)
无论我如何开始幻灯片放映,除非我手动触发宏,否则幻灯片上的数字不会更新。
【问题讨论】:
标签: vba powerpoint