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


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM