我想找到一个公式来生成特定单元格更新时的时间戳。不同之处在于,我需要能够记录多个时间戳,这些时间戳不会因另一个单元格更新而改变。
如果 G8 更新了,我会希望在 E8 中输入一个时间戳,而如果 G9 在一两分钟后更新,我会需要为 E9 输入一个不同的时间戳,但不会改变 E8 的时间戳。
答案1
最简单的方法是,在单元格 E8 中插入此公式并向下填充直至需要为止。
=IF(G8<>"",IF(E8="",NOW(),E8),"")
注意:
现在要使其静态,请执行以下操作:
- 单击“文件”,然后单击“选项”。
- 从列表中找到公式。
- 然后找到启用迭代计算。
- 检查它并将其设置为 1。
- 单击“确定”完成。
根据需要调整公式中的单元格引用。
另一个应该是 VBA 宏。
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
With Target
If .Column = G Then
Application.EnableEvents = False
Cells(Target.Row, E).Value = Time()
Application.EnableEvents = True
End If
End With
End Sub
怎么运行的:
- 按 Alt+F11 调用 VB 编辑器。
- 复制并粘贴此代码。
- 返回工作表。
- 将 WB 保存为启用宏的 *.xlsm。
现在,只要您在 G 列中输入任何值,此代码就会在相邻的单元格中输入时间戳。