我正在尝试使用类似于此的代码在宏中实现递归功能 - :
Dim showTime As Boolean
Sub RunClock()
Range("A1", "A1").Value = Now
If showTime = True Then
Application.OnTime Now + TimeValue("00:00:01"), "RunClock"
End If
End Sub
Sub StartClock()
showTime = True
RunClock
End Sub
Sub StopClock()
showTime = False
End Sub
当我执行StartClock时,它会显示一次然后给出错误 - "无法运行宏' Book1.RunClock'。宏可能在此工作簿中不可用,或者可能禁用所有宏。
答案 0 :(得分:3)
尝试将工作表名称与宏名称一起添加前缀。 Excel可能会查找名为Sheet1.RunClock的整个工作簿,请尝试如下(假设宏在Sheet1中)
Application.OnTime Now + TimeValue("00:00:01"), "!Sheet1.RunClock"