我想弄清楚是否有一种方法可以调用宏来在执行不同的宏后清除状态栏。我意识到我可以简单地使用:
Application.Wait(Now + TimeValue("00:00:05"))
Application.StatusBar = False
Run Code Online (Sandbox Code Playgroud)
然而,我想做的是让我原来的宏结束,说:
Application.StatusBar = "Macro Function Complete."
Call clearStatusBar
End Sub
Sub clearStatusBar()
'I do not want the application.wait here because it locks up the excel program.
Application.Wait(Now + TimeValue("00:00:05"))
Application.StatusBar = False
End Sub
Run Code Online (Sandbox Code Playgroud)
有没有办法延迟“Application.StatusBar = False”,同时仍然允许用户访问程序?
如果您需要更清晰的信息,请告诉我。感谢您的帮助。
小智 7
Sub TestClearStatusBar()
Application.StatusBar = "Testing: ClearStatusBar"
ClearStatusBar
End Sub
Sub ClearStatusBar(Optional ClearStatusBar As Boolean)
If ClearStatusBar Then
Application.StatusBar = False
MsgBox "Cleared"
Else
Application.OnTime Now + TimeValue("00:00:05"), "'ClearStatusBar True'"
End If
End Sub
Run Code Online (Sandbox Code Playgroud)