views:

33

answers:

1

In VBA you can

Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

to provide yourself with a sleep routine.

However, the Long that must be passed to the routine appears to overflow for values in excess of 32000 milliseconds.

Is there a way to sleep for longer periods of time without the complexity of stringing together several consecutive calls to the sleep routine?

+1  A: 

No, it doesn't overflow, unless your code that calculates required number of milliseconds causes an overflow.

Example:

dim t as long
t = 10000 * 10000 / 10000 'Overflow

Example 2:

dim t as long
t = 10000! * 10000 / 10000 'Ok
GSerg
You're right. The issue was only that I failed to specify that my argument was a Long with sufficient explicitness.
mcoolbeth