在Excel中停止计时器vba
问题描述:
我必须编写一个宏代码来获取给定时间作为输入格式(HH:MM:SS)。然后它应该在时间结束时在后台运行时间,它应该将消息显示为“超时”。在给予一些输入或时间之后,它从给定时间重新开始。好心建议在Excel中停止计时器vba
答
- 选择一个细胞并将它命名为rngElapseTime
- 格式的rngElapseTime小区的时间与类型为HH:MM:SS
- 进入开发 - > ViewCode
- 复制并粘贴下面的代码。
就是这样。每当用户更改rngElapseTime中的值时,下面代码中的计时器重新启动,并在TimeOver超时时提示用户。
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = Range("rngElapseTime").Address Then nextScheduledTime = Now + TimeValue(Format(Target.Value, "HH:MM:SS")) Application.OnTime nextScheduledTime, "TimeOver" End If End Sub Public Sub TimeOver() MsgBox "Time Over", vbInformation End Sub
这个地方的文章[如何显示在Excel中正在运行的时钟?](http://stackoverflow.com/questions/11867225/how-do-i-show-a-running-时钟在excel)将是一个很好的开始。 – Jeeped 2014-11-03 04:10:28