我现在设置了它,因此当单元格数据发生更改时,它会更新日期。刷新工作簿时,即使未修改单元格内容,也会更新日期。如何更新单元格中的日期只有当某个单元格被修改时
我只想更新日期,如果我修改单元格内容。我正在从CSV文件中提取数据,所以我经常不得不每隔一段时间刷新一次。我如何解决这个问题,以便它只显示真正修改单元格的日期?
我现在有一个这样的公共函数,但它不起作用。
Public Function worksheetChange(ByVal Target As Range)
If Not Application.Intersect(Target, [D4]) Is Nothing Then [L4] = Date
End Function
即使当我刷新表,我还没有修改的细胞,它仍然会更新日期,我该如何解决这个问题?
编辑:我想出了这种类型的VBA代码,但我不知道如何让它工作。
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, [D4]) Is Nothing Then
If Not ActiveWorkbook.RefreshAll Then [L4] = Date
End Sub
事后看来,这个代码意味着,如果应用程序不相交然后采取D4以及,如果工作簿不刷新,更新L4为今天的日期。
谢谢。
难道说,当刷新工作表虽然新值等于旧的[D4]被重新计算,? –
我会这样认为,它刷新时从csv文件中提取数据。我只希望日期改变,只有当单元格的内容发生变化时(例如,香蕉变成橙色,而不是香蕉变成香蕉) 我更新了我的代码,以便掌握我想要实现的功能。 – juiceb0xk
如何通过将旧值保存在某处(例如在另一个隐藏工作表中)并测试值是否已更改来执行某些编程解决方案? –