在锁定 Windows 时暂停 Excel 宏
Pause Excel macro while Windows is locked
我有一个宏,它 运行 是一个 SQL 查询,它会根据新数据触发电子表格的长时间缓慢重新计算。完成后,如果满足某些条件,我会使用 application.speech
提醒我;这一切都很好。但是:
正如我所说,重新计算可能需要很长时间,所以有时我会锁定 Windows 并在等待期间去做其他事情。有谁知道暂停宏的方法,以便在 Windows 解锁之前它不会 运行 最后几行(即音频警报)?
在您调用 Application.speech 之前,您可以检查系统是否被锁定,如果它被锁定,您每分钟重复一次检查,直到它被解锁。
系统锁定时的代码
Sub SystemLocked()
Do While Check_If_Locked = "Locked"
Application.Wait TimeValue("00:00:01")
Loop
MsgBox "Done"
End Sub
Check_If_Locked 的代码可以在这里找到
https://www.mrexcel.com/forum/microsoft-access/646623-check-if-system-locked-unlocked-using-vba.html
我有一个宏,它 运行 是一个 SQL 查询,它会根据新数据触发电子表格的长时间缓慢重新计算。完成后,如果满足某些条件,我会使用 application.speech
提醒我;这一切都很好。但是:
正如我所说,重新计算可能需要很长时间,所以有时我会锁定 Windows 并在等待期间去做其他事情。有谁知道暂停宏的方法,以便在 Windows 解锁之前它不会 运行 最后几行(即音频警报)?
在您调用 Application.speech 之前,您可以检查系统是否被锁定,如果它被锁定,您每分钟重复一次检查,直到它被解锁。 系统锁定时的代码
Sub SystemLocked()
Do While Check_If_Locked = "Locked"
Application.Wait TimeValue("00:00:01")
Loop
MsgBox "Done"
End Sub
Check_If_Locked 的代码可以在这里找到 https://www.mrexcel.com/forum/microsoft-access/646623-check-if-system-locked-unlocked-using-vba.html