Я использовал этот код с успехом в качестве таймера обратного отсчета, но он не работает в качестве таймера обратного отсчета .Я получаю
Ошибка 1004 Определяемая приложением og объектная ошибка
в строке
Cell.Value = CountDown - (Timer - Start - 86400 * (Start > Timer)) / 86400
Я думаю, что она умножается с нуля.
Я знаю, что код будет работать с Cell.Value = CountDown - TimeSerial(0, 0, Timer - Start)
, но я не могу его использовать, в то время как TimeSerial
- это вариант (целое число), что означает, что код может выполнить только 32767 отсчетов в секундах, прежде чем он остановится.в Ошибка переполнения .У кого-нибудь есть идеи, как обойти проблему ошибки 1004 в коде ниже.
Option Explicit
Sub NewTimer() 'Countdown timer
Dim Start As Long
Dim Cell As Range
Dim CountDown As Date
Start = Timer
Set Cell = Sheet1.Range("B1") 'This is the starting value.
CountDown = TimeSerial(0, 0, 10) 'Set takttime
Cell.Value = CountDown
Do While Cell.Value > 0
Cell.Value = CountDown - (Timer - Start - 86400 * (Start > Timer)) / 86400
DoEvents
Loop
End Sub