如何在 Excel 中使用 NOW() 公式设置当前时间而不增加?

如何在 Excel 中使用 NOW() 公式设置当前时间而不增加?

如果我NOW()在公式中使用,它会给我当前时间,但下一分钟它会改变为正确时间或开始继续。

ctrl但我的问题是,无需按+ shift+就应保持当前时间I

我需要它在公式中保存当前时间而不继续。

答案1

正如评论中所解释的,NOW()这是一个易失性函数,每次重新计算时返回的值NOW()都会更新。

作为一种解决方法,您可以使用 1 或 2 个辅助列(取决于您的工作表的设置方式)和一些 VBA 来完成此任务。

  • A 列(开始时间)
  • B 列(结束时间)
  • C 列(公式例如=TEXT(B1-A1, "小时:分钟")

您可以使用下面的 VBA 代码,您需要做的就是将其设置为您想要使用的键盘快捷键。

Sub insertTime()
    ' Assign this macro to a keyboard shortcut.
    ' e.g. [Ctrl]+[Shift]+[T]
    ' The currently selected cell will be updated with the time.

    Dim rng As Range

    Set rng = Range(ActiveCell.Address) ' Sets the currently selected cell as the range variable rng

    rng.Value = Now ' Changes the value of the selected cell to the timevalue

End Sub

上述代码的工作原理在每行的注释中进行了解释。

相关内容