繁体   English   中英

Excel-VBA现在价值:拆分秒

[英]Excel-VBA Now Value: Split Second

请有人帮忙。 我搜索过这个,但没找到合适的东西。 我有一个VBA宏,当在一个单元格中输入一个字符时,它会将当前计算机的时间放在单元格中。 我为比赛设计了一张计时表,并且需要让赛车手完成比赛。 挑战在于我正在使用

.Value =现在

命令,虽然我也用过

.NumberFormat =“dd / mm / yyyy hh:mm:ss.00”

命令,我没有得到分秒。 它将返回值

2017/03/10 13:14:27:00

分秒始终为0。

如果我只是在Excel中使用NOW()公式并将数字格式更改为包括分秒,计算机时间本身就包含分秒,并且它在那里显示完美,但是当我使用宏时这不起作用。

任何人都可以协助我把时间缩短到第二级吗? 我的宏的完整代码如下:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim rCell As Range
Dim rChange As Range

On Error GoTo ErrHandler
Set rChange = Intersect(Target, Range("B2:B1000000"))
If Not rChange Is Nothing Then
    Application.EnableEvents = False
    For Each rCell In rChange
        If rCell > "" Then
            With rCell.Offset(0, 1)
                .Value = Now
                .NumberFormat = "dd/mm/yyyy hh:mm:ss.00"
            End With
        End If
    Next
End If
ExitHandler:
  Set rCell = Nothing
  Set rChange = Nothing
  Application.EnableEvents = True
  Exit Sub
ErrHandler:
  MsgBox Err.Description
  Resume ExitHandler
End Sub

您可以像这样调用工作表函数

.Value = [Now()]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM