我将每周一次的结业签发给我的同事。
我希望它在K2
,h2
或i2
等中用true或false填充值时在l2
中提供时间戳。 ..我确定我可以弄清楚如何将其应用于其他单元,但是我需要入门方面的帮助。
我尝试使用NOW()
,但是每次您进行更改或打开工作簿时,它都会更新,我需要将其自动填充一次以进行验证。
感谢您的帮助!
答案 0 :(得分:0)
这需要在VBA中完成,因为正如您所说,Now()
工作表功能将在重新计算工作表时自动更新。
您可以使用Worksheet_Change()
事件来执行此操作。
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim colRng As Range
Set colRng = Union(Me.Columns("H"), Me.Columns("I"), Me.Columns("L"))
If Not Intersect(Target, colRng) Is Nothing and (target.value = True or _
target.Value = false) Then
Me.Cells(Target.Row, "K").Value = Now
End If
End Sub
这时,只要您更新H
,I
或L
列中的单元格,列K
中的相应行现在都将带有您的时间戳。 / p>
如果您不熟悉VBA,那么最简单的方法是右键单击 Excel底部的工作表标签,然后单击查看代码强>。新窗口打开后,您需要将以上代码块粘贴到VBE中。然后,您可以简单地关闭此窗口并继续下面的突出显示部分。
您将需要将其重新保存为新的工作簿格式。在工作表处于活动状态时,按 F12 ,然后在另存为类型下拉列表中,选择
Excel Macro-Enabled Workbook (*.xlsm)
。