excel学习库

excel表格_excel函数公式大全_execl从入门到精通

Excel表格如何使用公式自动记录货物的入库时间?

自动记录货物的入库时间,并且不会实时地自动更新时间,比如上午9点01分录入的入库信息,显示为9点01分,当10点再打开文件时,录入时间不会自动更新到10点。

某物流企业在进行货物入库记录时,想要设置一个自动记录货物具体的入库时间的公式。以便于在后续需要的时候,可以直接获知所有货物单号的最初的记录时间,也就是入库时间。

即当在B列输入货物信息时,A列会自动显示当前录入信息的时间。

具体的效果如下动图所示:

根据题意,我们首先选定要使用的函数,在这个包含时间和条件的场景,自然是优先考虑使用if+now函数的嵌套公式。

当B列输入货物信息,也就是B列单元格不为空时,则在A列显示当前时间。

那么我们可以输入公式:

=IF(B2="","",NOW())

now函数是返回当前的实时时间,它的结果会即时变动,只要在表格中进行任意编辑或修改清除等操作,都会更新now函数的结果。

我们从下面动图演示的情形可以看到,当在表格中输入了一个内容,输入的if函数公式结果出现了变动,本来是52分,变成了当前时间53分。

所以以上公式并不能满足我们的需求,因为我们要记录货物入库的具体时间,并不想这个时间会随着时间的变动而更新。

那么我们必须从另一个方式来完成任务了。

现在再次输入一个if+now函数的嵌套公式:

IF(A2="",NOW(),A2)

这个公式是在A2单元格中输入的,但公式中又引用了A2单元格,那这是一个典型的循环引用。

在循环引用的场景中,要使循环引用生效,则必须在表格文件选项中进行迭代计算的设置。

所谓迭代计算,是计算机领域的一个术语,在excel中,我们可以直接理解为循环计算。

如何设置迭代计算,比较简便。

点击文件--更多--选项--公式--勾线启用迭代计算。

不同的excel版本其设置的路径可能不同,但基本都在公式的设置选项内。

设置完迭代计算,我们回到表格,当在B列输入货物信息时,A列会自动记录输入货物信息的具体时间,而且它不会随着时间变动而进行更新。

IF(A2="",NOW(),A2)

if函数第3参数 的结果

而后面这个if表达式的含义是,当A2等于空值时,返回now函数的结果,否则返回A2的值。

那我们连起来理解,当在B2录入货物信息,即B2不等于空值,返回if函数的第3参数结果,即后面这个if函数的结果。而A2本身就是空值,那么它将返回now函数的值,即当前时间。

当B2不等于空值,则A2等于now函数的值。

最后我们再进行公式的循环计算,此时B2不是空值,A2也不是空值,因此if函数会返回A2的值,即值保持不变。

解释的字句越多,反而感觉越混乱,如果还不清楚的话,可以直接记住它的公式和迭代计算的设置,遇到相同场景,直接应用即可!

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2024年12月    »
1
2345678
9101112131415
16171819202122
23242526272829
3031
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
      友情链接