excel - VBA application.ontime 不工作

标签 excel vba

我正在尝试使用类似于此的代码在宏中实现递归功能-:

    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'。该工作簿中可能没有该宏,或者所有宏都可能被禁用。

最佳答案

尝试将工作表名称与宏名称一起添加前缀。 Excel 可能我正在查看名称为 Sheet1.RunClock 的整个工作簿,因此请尝试如下(假设宏在 Sheet1 中)

 Application.OnTime Now + TimeValue("00:00:01"), "!Sheet1.RunClock"

关于excel - VBA application.ontime 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32367362/

相关文章:

Ubuntu下打开的Excel文件,由R、OpenOffice读取

excel - 将文本粘贴到 Excel 注释 VBA

excel - 是否能够在保留相邻列的值的同时拆分单元格?

excel - 在Excel中使用宏将多个单元格合并为一个单元格?

VBA UBound 函数

excel - 如何从换行的文本单元格中提取特定的文本行?

vba - 复制/粘贴 VBA 时出现错误代码 1004 无法解决

vba - 当单元格值变化时如何获取msgbox excel vba

excel - 为行着色的宏编程

vba - 数据透视表与数据透视缓存