搭建神奇的月光宝盒,让NOW函数的历史时间重现

到现在为止,在我们这个平台,函数讲的越来越多了。之前也反复的提到,仅某一个函数,往往功能单一,但函数的组合却功能强大。强大到什么程度?犹如月光宝盒,可以让NOW函数的历史时间再现。

还是讲具体的实例吧,下面的图表是某公司外购材料的送检记录,当序号、材料、订货、到货、送检、送检结果出来之后,要在完成时间中自动的录入最后送检结果录入的时间,表示此条记录的完成。那么在G3单元格需要录入一个的公式,这个公式要实现:在A1到F1单元格都不是空时将返回当前的时间,即NOW时间。

搭建神奇的月光宝盒,让NOW函数的历史时间重现

如何做到呢?别急,我们还是一步一步讲解。

首先我们要引入一个函数COUNTBLANK()。函数讲解,COUNTBLANK函数是计算指定单元格区域中空白单元格的个数,或是判断指定区域是否有空的单元格。

语法是COUNTBLANK(range),其中range 就是指定的区域。

有了上面的函数,是否就可以录入公式=IF(COUNTBLANK(A3:F3), "",NOW())呢?我们闭上眼睛想一想,是不是呢?答案是否定的。

首先,当我们把A3到F3所有的单元格都录入了之后,这时依照上面的公式在G3中肯定是会出现此时的NOW时间。那么是不是问题就解决了呢?还没有。我们往下分析。

其次,当我们完成记录,保存,关闭工作表。

第三,当我们再次打开工作表,查看记录时会发现,这时的记录又是当前的NOW时间了。不是当初的时间了。

问题出现在这里。那么怎么去解决呢?这就要搭建我们的月光宝盒,让NOW的历史时间再现了。

之前我们的公式是=IF(COUNTBLANK(A3:F3), "",NOW()),显然,问题出在NOW()这里,那么采用什么代替NOW()呢。

我们再用一层IF判断函数:IF(G3= "",NOW(),G3),用这个公式来代替上面的NOW()就可以了。构成了公式=IF(COUNTBLANK(A3:F3),"",IF(G3="",NOW(),G3))。公式截图如下:

搭建神奇的月光宝盒,让NOW函数的历史时间重现

但是细心的读者马上会发现另外的问题,就是这里出现了循环引用,就是当G3不为空时返回G3,又是新的问题,怎么解决这个问题呢?

这是个迭代。我们先看看迭代的解释,迭代的意思是反反复复地执行某一步骤、程序或者事件。我们要利用迭代就必须先让它为我所用,我们先对它进行设置。好在EXCEL中有现成的设置。

打开工具,选项,看下面的截图。勾选迭代计算,最多迭代次数选为1,好了,设置完成。

搭建神奇的月光宝盒,让NOW函数的历史时间重现

看下面返回的结果:

搭建神奇的月光宝盒,让NOW函数的历史时间重现

好了当送检结果录入后,会在G3单元格中显示当前的时间。

下面看看我们的月光宝盒灵不灵,我先关闭了当前文件,然后再次打开,NOW时间为21:07。上面的黄色区域时间没事任何变化,好,月光宝盒成功搭建完成。

搭建神奇的月光宝盒,让NOW函数的历史时间重现

今日内容总结:

1.COUNTBLANK 函数可以返回指定区域单元格的空的个数,也可以返回是否有空的单元格。

2.IF判断函数加上迭代操作可以搭建月光宝盒函数,可以使NOW的历史时间再现。


分享到:


相關文章: