VBScript中的时间延迟

VBScript中的时间延迟,vbscript,timedelay,excel-vba,Vbscript,Timedelay,Excel Vba,我想在我的VB脚本代码中引入两个连续行之间的3小时延迟 我正在为此使用以下代码段: WScript.Sleep 10800000 但我认为代码会停止很长时间,远远超过3个小时。我使用了10800000,因为我读取的时间是以毫秒为单位的 请让我知道我的错误和正确的方法来实现这一点。 谢谢大家! 重要提供此解决方案是因为问题在开始时已标记 我会给你不同的选择。我想你现在有这样的情况: Sub MyCurrentSub() Dim A A = 10 'wait 3 hour

我想在我的VB脚本代码中引入两个连续行之间的3小时延迟

我正在为此使用以下代码段:

WScript.Sleep 10800000
但我认为代码会停止很长时间,远远超过3个小时。我使用了10800000,因为我读取的时间是以毫秒为单位的

请让我知道我的错误和正确的方法来实现这一点。
谢谢大家!

重要提供此解决方案是因为问题在开始时已标记

我会给你不同的选择。我想你现在有这样的情况:

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应用程序也将受到限制,至少部分将无法正常工作

我会这样做,在适当的时候创建并调用不同的Sub:

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

重要信息提供此解决方案是因为问题在开始时已标记

我会给你不同的选择。我想你现在有这样的情况:

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应用程序也将受到限制,至少部分将无法正常工作

我会这样做,在适当的时候创建并调用不同的Sub:

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

重要信息提供此解决方案是因为问题在开始时已标记

我会给你不同的选择。我想你现在有这样的情况:

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应用程序也将受到限制,至少部分将无法正常工作

我会这样做,在适当的时候创建并调用不同的Sub:

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

重要信息提供此解决方案是因为问题在开始时已标记

我会给你不同的选择。我想你现在有这样的情况:

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应用程序也将受到限制,至少部分将无法正常工作

我会这样做,在适当的时候创建并调用不同的Sub:

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\u 2

尝试以下操作:

timeout = DateAdd("h", 3, Now)
Do Until Now > timeout
  WScript.Sleep 200
Loop

试着这样做:

timeout = DateAdd("h", 3, Now)
Do Until Now > timeout
  WScript.Sleep 200
Loop

试着这样做:

timeout = DateAdd("h", 3, Now)
Do Until Now > timeout
  WScript.Sleep 200
Loop

试着这样做:

timeout = DateAdd("h", 3, Now)
Do Until Now > timeout
  WScript.Sleep 200
Loop

非常感谢您的回答..这很有帮助:)。此提示适用于问题标签中所述的VBA。我不知道如何在VBScript中执行此操作…非常感谢您的回答..非常有用:)。此技巧适用于VBA,如问题标签中所述。我不知道如何在VBScript中执行此操作…非常感谢您的回答..非常有用:)。此技巧适用于VBA,如问题标签中所述。我不知道如何在VBScript中执行此操作…非常感谢您的回答..非常有用:)。此技巧适用于VBA,如问题标签中所述。我不知道如何在VBScript中完成它。。。