首页 > 解决方案 > 需要帮助来自动输入日期和时间并计算自上一行输入以来经过的时间

问题描述

我需要形成一个电子表格或程序,当我输入临床事件的文本时,各个行会自动输入日期和时间。

当我将文本输入下一行时,我需要它输入那个时间,并且在另一列中给我自前一行输入以来经过的时间。

我已经在互联网上搜索了几个月,因为多年前我有一个可以在 Windows 上执行此操作的“小”程序。但现在我需要这样才能在 Mac、iOS 以及希望的 Windows 上工作。我不惜任何代价都找不到任何东西,但是可以看到很多东西来跟踪计费时间。我有Excel,欢迎提出建议。我不是程序员,但刚过去的朋友说他认为他可以用VB做?提前致谢。

标签: iosexcelvbadatetimeexcel-formula

解决方案


我不知道苹果产品上的 vba 是否不同,但这是可以做到的一种方法(至少在 Windows 中)。

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim ws As Worksheet
    Set ws = Target.Worksheet

    If Target.Column >= 2 Then
        ws.Range("A" & Target.Row).Value = Now()
        If Target.Row - 1 <> 0 Then
            ws.Range("B" & Target.Row).Value = DateDiff("s", ws.Range("A" & Target.Row - 1).Value, ws.Range("A" & Target.Row).Value)
        End If
    End If
End Sub

只要在该行的任何其他列中输入任何内容,这将在 A 列中放置时间戳,并在 B 列中输入自前一行条目以来的时间(以秒为单位)。注意:有有限的错误检查。


推荐阅读