想做个功能,点一次按钮,就在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
这个方法可以完美的记录歌词的时间了。