Vba Excel用户窗体实时倒计时

Vba Excel用户窗体实时倒计时,vba,excel,Vba,Excel,我创建了一个带有文本标签的简单用户表单。我已经将这段代码放在激活userform上,以便从目标时间开始运行剩余时间。一旦它运行,它是好的,但它不会倒计时。。。秒不会弹下来。。。等等 代码 Private Sub UserForm_activate() targtime = DateValue("28 Jun 2018") + TimeValue("18:37:00") remtime = targtime - Now Me.Label1 = Int(remtime) & " Days "

我创建了一个带有文本标签的简单用户表单。我已经将这段代码放在激活userform上,以便从目标时间开始运行剩余时间。一旦它运行,它是好的,但它不会倒计时。。。秒不会弹下来。。。等等

代码

Private Sub UserForm_activate()
targtime = DateValue("28 Jun 2018") + TimeValue("18:37:00")
remtime = targtime - Now
Me.Label1 = Int(remtime) & " Days " & Format(remtime - Int(remtime), "HH:MM:SS")
End Sub

我做错了什么?

把它放在一个无休止的循环中,它每秒钟都会开始滴答作响:

Private Sub UserForm_Activate()

    Dim remTime As Date

    While True
        remTime = DateValue("28 Jun 2018") + TimeValue("18:37:00") - Now
        Me.Label1 = Int(remTime) & " Days " & Format(remTime - Int(remTime), "HH:MM:SS")
        Me.Repaint
        Application.Wait Now + #12:00:01 AM#
    Wend


End Sub

这使我的用户表单崩溃了。。我必须按住ctrl键并将其打破。同样,秒并没有滴答作响。@OdaySalim-不过,做一个滴答作响的无休止的循环预计会在某个时候崩溃。。。你应该想出一些逻辑何时以及如何停止。我将能够把逻辑表达式放在一起,使它停止。我不能做的是让时钟滴答作响…@OdaySalim-在更新的代码中,时钟滴答作响。我添加了
Me.Repaint
和等待。不过,在享受了一段时间的滴答声之后,你必须用Ctrl+Break来停止它。谢谢-也许没有必要让它每秒滴答声。我会在几天内做一个倒计时,没有循环,也不必打破循环。谢谢