我想在我的VB腳本代碼中的兩個連續行之間引入3小時的延遲。VBScript中的時間延遲
我使用下面的代碼片段如下:
WScript.Sleep 10800000
但我認爲代碼停止很長一段時間,很多超過3小時以上。我用了10800000,因爲我讀的時間以毫秒爲單位。
請讓我知道我的錯誤和實現這一目標的正確方法。 謝謝!
我想在我的VB腳本代碼中的兩個連續行之間引入3小時的延遲。VBScript中的時間延遲
我使用下面的代碼片段如下:
WScript.Sleep 10800000
但我認爲代碼停止很長一段時間,很多超過3小時以上。我用了10800000,因爲我讀的時間以毫秒爲單位。
請讓我知道我的錯誤和實現這一目標的正確方法。 謝謝!
重要提供此解決方案是因爲問題在開始時被標記爲excel-vba。
我會給你不同的選擇。我想你此刻是這樣的:
Sub MyCurrentSub()
Dim A
A = 10
'wait 3 hour here and...
'...after 3 hours do other part of the sub
MsbBox A
End Sub
在等待時間,即使您使用不同的選項來等待(如Do...Loop
)您的Excel應用程序將是有限的,至少部分地將不作爲平時的工作。
我會做這種方式,通過在適當的時候建立和調用不同的子:
Public A
Sub MyNewSub_1()
A = 10
Appication.OnTime Now + TimeValue("03:00:00"), "MyNewSub_2"
End Sub
'now you can use your Excel as usually...
Sub MyNewSub_2()
MsgBox A
End Sub
你會得到相同的結果,的Excell將免費爲你等待過程中使用3小時時間。唯一需要記住的是 - 請勿退出應用程序。如果您退出Excel,它將'忘記'致電MyNewSub_2
。
嘗試這樣:
timeout = DateAdd("h", 3, Now)
Do Until Now > timeout
WScript.Sleep 200
Loop
非常感謝您的answer..it是有益的:)。 – user2862496
我們如何才能在VB腳本中實現這種延遲? – user2862496
這個提示是針對問題標籤中提到的VBA。我不知道如何在VBScript中做... –