运行 倒计时结束后的子程序
Run a sub-routine once the countdown is over
Dim time As Date
Dim count As Integer
time = Now()
count = 60
time = DateAdd("s", count, time)
Do Until time < Now
DoEvents
With ActivePresentation.Slides(2).Shapes("T").TextFrame.TextRange
.Text = Format((time - Now()), "hh:mm:ss")
End With
Loop
如何在倒计时结束后将名为 SendDetails
的子程序添加到 运行?
While time < Now
DoEvents
Wend
SendDetails
如果我使用上面的代码而不是
Do Until time < Now
DoEvents
Slides(2).Shapes("T")
中的文本未更新。
While
和Until
是相反的。当你开始循环时,time
比 Now()
大,但随着时间的推移,Now()
会赶上。如果您将代码作为一个简单的英文句子来阅读,它会更有意义。
认为 While
是 "as long as 'condition' is true"。 Until
表示 "do this until 'condition' is true"。
您可以在进入循环之前或退出之前进行测试。
你的情况
Do While time < Now()
Loop
Do
Loop Until time > Now()
是两个最明确的选项。记下 <
和 >
字符。
要添加 运行 另一个子例程的规定 SendDetails
只需在循环中添加一个 If 语句:
Do Until time < Now
DoEvents
If time < Now() Then
SendDetails
End If
Loop
Dim time As Date
Dim count As Integer
time = Now()
count = 60
time = DateAdd("s", count, time)
Do Until time < Now
DoEvents
With ActivePresentation.Slides(2).Shapes("T").TextFrame.TextRange
.Text = Format((time - Now()), "hh:mm:ss")
End With
Loop
如何在倒计时结束后将名为 SendDetails
的子程序添加到 运行?
While time < Now
DoEvents
Wend
SendDetails
如果我使用上面的代码而不是
Do Until time < Now
DoEvents
Slides(2).Shapes("T")
中的文本未更新。
While
和Until
是相反的。当你开始循环时,time
比 Now()
大,但随着时间的推移,Now()
会赶上。如果您将代码作为一个简单的英文句子来阅读,它会更有意义。
认为 While
是 "as long as 'condition' is true"。 Until
表示 "do this until 'condition' is true"。
您可以在进入循环之前或退出之前进行测试。
你的情况
Do While time < Now()
Loop
Do
Loop Until time > Now()
是两个最明确的选项。记下 <
和 >
字符。
要添加 运行 另一个子例程的规定 SendDetails
只需在循环中添加一个 If 语句:
Do Until time < Now
DoEvents
If time < Now() Then
SendDetails
End If
Loop