excel指定单元格内容修改后另一指定单元格里面的时间自动更新

2025-02-24 20:36:18
推荐回答(3个)
回答1:

这个需求如果要用公式而不是宏来实现,关键在于两点:

  1. 需要记录下I列单元格修改前的数据,这个只能放在R列本身,因为如果用其他单元格保存,在I列变化时,那个单元格也同时变化了;

  2. 需要对自身进行判断,也就是迭代计算。

2可以通过设置迭代(次数1)来设置,那么,R3的公式就是:

=IF(I3="","",IF(ISERR(FIND("|",R3)),TEXT(NOW(),"yyyy-mm-dd hh:mm:ss")&"|"&I3,IF(--MID(R3,FIND("|",R3)+1,10)=I3,R3,TEXT(NOW(),"yyyy-mm-dd hh:mm:ss")&"|"&I3)))

效果如图,附件可下载参考


回答2:

在工作簿VBA的Thisworkbook中写如下代码:
Dim x

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Column <> 2 Then Exit Sub '"2"指第2列输入数据
If Target.Row = 1 Then Exit Sub
If Target.Value = "" Then
Target.Offset(0, 4).Value = "" '"4"指在输入数据的单元格后第四列单元格里显示现在的时间
Exit Sub
End If
If Target.Value = x Then Exit Sub
If Target.Count > 1 Then Exit Sub
Target.Offset(0, 4) = Now
End Sub

回答3:

这个只能用宏或自定义函数来实现。