Vlookup函数公式,结果是45648,你得知道的小细节

志课程 2024-11-28 16:33:07

举个工作中的实例,我们有一个数据源,记录了订单号的送达时间,其它不必要的数据我们将它进行了删除,只保留了A:B两列。

现在需要根据给出的订单号码,快速匹配出来送达时间,如下所示:

面对这种查找匹配问题,我们都会使用vlookup函数公式去查找

输入的公式是:=VLOOKUP(E2,A:B,2,0),得到如下的结果:

这里出现了2个bug

第1个bug,原始数据源是日期,但查找匹配出来的结果4万多的数据

第2个bug,当原始数据是空白的时候,查找匹配出来的结果是数字0

第一个bug

这是因为我们查找匹配的结果是日期格式的数据,虽然它的显示效果是日期,但本质是一个数字

在excel里面,数字1默认是1900年的1月1日,数字2就是它的后1天,每加数字1,就是对应加1天,

那数字45648就是对应就是2024年12月22日

因此,当我们的数据源是日期格式的时候,我们查找匹配,想要得到时间结果

那就需要将结果列的数据源,更改成日期格式就可以了

第2个bug

当原数据是空白时候,它查找匹配出来的结果是0

当我们设置单元格格式为日期的时候,它也会变成1900/1/0

我们想要的结果,如果原数据是空白,我们希望它就是空白

因此,我们要修改一下公式:

输入的公式是:

=IF(VLOOKUP(E2,A:B,2,0)="","",VLOOKUP(E2,A:B,2,0))

你会发现这个公式有点长,而且重复引用了

如果你更新到了新版本,为解决这种公式重复输入的问题,推出一个LET公式

我们可以将上面的公式优化成:

=LET(x,VLOOKUP(E2,A:B,2,0),IF(x="","",x))

也就是把重复的公式定义成x

然后再使用x去套用公式,可以将公式表达的更简捷

关于这个小技巧,你学会了么?动手试试吧!

2 阅读:152
志课程

志课程

感谢大家的关注