2

我有一个计时器,我正在积极运行一个DoEvents功能。问题是每三十秒我想在我的工作表中手动输入一些温度值。但是,如果我在活动运行时这样做,我会得到:

运行时错误“1004”:指定的维度对当前图表类型无效。

一些想法:我打算尝试关闭屏幕更新,但这会让我无法实时看到时间变化。

活动事件是否使我无法处理我的文档?如果是这样,有没有办法解决这个问题?

这是我的代码主体(我也有一个用于停止和重置计时器的子,但我认为这不相关):

Sub START_TIMER()
Dim sh As Worksheet
Set sh = ThisWorkbook.ActiveSheet

sh.Range("AI1").Value = "Start"

If sh.Range("AI2").Value = "" Then
sh.Range("AI2").Value = Now
sh.Range("AL2").Value = Now
End If

x:
VBA.DoEvents

If sh.Range("AI1").Value = "Stop" Then Exit Sub

sh.Range("AI3").Value = Now
sh.Range("AL3").Value = Now

    If sh.Range("AL4").Value > TimeValue("00:00:29") Then
        sh.Range("A17").Interior.Color = vbYellow
        sh.Range("AL2").Value = Now
        Beep

    Else
         sh.Range("A17").Interior.Color = vbWhite

    End If

GoTo x

If sh.Range("AL4").Value = "0:00:30" Then
    sh.Range("AL2").Value = Now
End If

End

End Sub
4

1 回答 1

0

我想到了!

如果我只是在下一个错误恢复,那么它运行得很好,可以满足我的需要。

于 2019-04-14T10:25:08.807 回答