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

指定单元格里面内容每修改一次另一指定单元格里面的时间自动变为修改时的时间.如图当I列内容发生修改时在R列显示最后修改时间,现在这个公式只能显示第一次填写时间... 指定单元格里面内容每修改一次另一指定单元格里面的时间自动变为修改时的时间.如图当I列内容发生修改时在R列显示最后修改时间,现在这个公式只能显示第一次填写时间 展开
 我来答
万年金刚钻
2017-02-05 · TA获得超过1.6万个赞
知道大有可为答主
回答量:1.1万
采纳率:0%
帮助的人:3402万
展开全部

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

  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)))

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


ltdh456
2021-02-09 · 超过10用户采纳过TA的回答
知道答主
回答量:29
采纳率:0%
帮助的人:8653
展开全部
在工作簿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
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
freegoto
2017-02-05 · TA获得超过2204个赞
知道大有可为答主
回答量:1754
采纳率:80%
帮助的人:345万
展开全部
这个只能用宏或自定义函数来实现。
更多追问追答
追问
可以具体点吗,我试了好多都不行
追答
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 9 Then Target.Offset(0, 9).Value = Now
End Sub

方法:

选定工作表》ALT+F11,粘贴这段代码,启用宏就可以了。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式