通过公式更改单元格时的时间戳(Excel)

我需要一种方法来标记其值通过公式更改的相邻单元格的时间戳。 以此为例,我需要在工作表1中与A1相邻的单元格为单元格值更改时的date和时间添加时间戳。

上面链接的示例在单元格值通过公式更改时启动消息框(如果worksheet_change事件包含的公式的值由于其他位置的单元更改而不能识别单元值的更改)。 我不想要消息框,但我想要一个时间戳。

为了简单起见,我将在此链接的问题发布说明,任何额外的帮助,这个具体问题表示赞赏。

在Sheet1单元格A1中,放入此公式

=Sheet2!A1+1 

现在在一个模块粘贴这个代码

 Public PrevVal As Variant 

将其粘贴在“表单代码”区域中

 Private Sub Worksheet_Calculate() If Range("A1").Value <> PrevVal Then MsgBox "Value Changed" PrevVal = Range("A1").Value End If End Sub 

最后在ThisWorkbook Code区域粘贴这个代码

 Private Sub Workbook_Open() PrevVal = Sheet1.Range("A1").Value End Sub 

MsgBox "Value Changed"为:

 Range("B1").Value = Format(Now, "dd/mm/yyyy hh:mm:ss") 

或者您需要的时间戳格式