我的第一篇文章,如果我错过了这里明显的内容,或者提出了近期无意中遇到的无意重复问题,我深表歉意。
所以我正在PowerPoint 2016中进行演示:
我要做什么:
因此位置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函数。
我认为这是我的问题所在?我的头很痛...有人能指出我正确的方向吗? :)
无论我如何开始幻灯片放映,除非手动触发宏,否则幻灯片上的数字都不会更新。
答案 0 :(得分:1)
不要“选择”形状。例如:
Sub Countup()
Dim thedate As Date
Dim daycount As Long
Dim Icount As Integer
Dim vShape
Set vShape = ActivePresentation.Slides(28).Shapes("LTAno")
thedate = "10/04/2017"
daycount = DateDiff("d", thedate, Now)
vShape.TextFrame.TextRange.Text = daycount
End Sub