VBA记录当前系统时间并精确到毫秒

想做个功能,点一次按钮,就在A1记录一次当前系统时间,要精确到毫秒的。再点一次按钮就在A2显示,以此类推!

例如:这个功能可以用来做歌词记时间!

Sub ttt()
ActiveCell.Select
tt = Timer
h = Int(tt / 3600)
m = Int((tt - 3600 * h) / 60)
s = Int(tt - h * 3600 - m * 60)
ss = Left(tt - Int(tt), 4)
Selection.NumberFormatLocal = "yyyy-mm-dd hh:mm:ss.000"
Selection.Value = h & ":" & m & ":" & s & ss
ActiveCell.Offset(1, 0).Select
End Sub

上面的代码确实可以实现这个功能,可是还有个问题,当超过一个屏幕的时候,点着点着,按钮点不到了,excel视图随着点击按钮新的内容屏幕往下移了,按钮看不到了,你不能改变光标位置。所以我再次改良如下代码:

Sub testTime()
Dim tt, n
tt = Timer
n = Range("A65536").End(xlUp).Row
h = Int(tt / 3600)
m = Int((tt - 3600 * h) / 60)
s = Int(tt - h * 3600 - m * 60)
ss = Left(tt - Int(tt), 4)
Cells(n + 1, 1).NumberFormatLocal = "hh:mm:ss.000"
Cells(n + 1, 1) = h & ":" & m & ":" & s & ss
End Sub

这个方法可以完美的记录歌词的时间了。

 

参考出处:http://www.excelpx.com/thread-329989-1-1.html

posted on 2015-12-19 19:44  jack_Meng  阅读(5756)  评论(0编辑  收藏  举报

导航