分享

Excel教程:如何消除Vlookup的“BUG”,让空返为空?

 Excel教程平台 2020-10-30

今天某学员兴高采烈地跟我说发现vlookup存在一个重大的BUG。我听完一愣,这不应该吧?

听完这位学员详细叙述,我终于明白了。她所说的“BUG”是指vlookup函数在运算过程中如果第三个参数返回值所在单元格为空,函数返回的结果不是空而是0。如下表所示,学员根据员工工号查找对应扣除工资明细,源表中9003工号对应的E4单元格为空时,右侧表中输出的结果为0,而不是空。

学员表示这种情况可能会导致数据统计错误,带来很大的麻烦。那么如何才能使空白单元格就返回一个空白单元格呢?

这个问题很简单,我们只需要对原vlookup函数公式运算结果进行判断,如果运算结果为0,就返回空值,如果运算结果不为零,就返回运算的结果。

首先给大家看看采用新的函数公式后的结果:

我们通过函数公式:=IF(ISNUMBER(VLOOKUP(I2,A:E,5,0))=FALSE,"",VLOOKUP(I2,A:E,5,0))就完成了“空对空”。

学员看完公式表示很懵,这么多括号怎么才能理清逻辑关系呢?况且还有个从来没用过的ISNUMBER函数!

当我们遇到很长的函数时不要害怕,只要按步拆解就能弄明白。

下面我们就为这位学员拆解函数公式。

拆解第一步:

VLOOKUP(I2,A:E,5,0)此部分函数公式相信经常看我们excel教程文章的朋友都比较熟悉,其含义是返回I2单元格在A列所在的行数对应第5列单元格内容。“千字不如一图”,用一张图片大家就会一目了然。

注意:1、vlookup常规的用法是查找值必须在选择的区域首列。2、第三个参数列号不能小于1,不能大于所选单元格区域总的列数值。如选中A:E区域后,区域里总共只有5列,如果输入6,那么就会返回单元格引用错误信息“#REF”。

拆解第二步:

ISNUMBER(VLOOKUP(I2,A:E,5,0)这部分函数公式看起来陌生,其实比第一步理解起来更加容易。只是在前面增加了一个ISNUMBER函数,我们只要弄清楚这个函数就简单了。

ISNUMBER函数可以拆解为IS+NUMBER,这样拆解开大家应该都会明白,其实就是“是否为数值”,他的功能就是判断一个单元格是否为数值。

下面我做个简单的演示给大家看下:

我们可以看到上面的例子中E6单元格为空白,ISNUMBER判断结果为FALSE。文章开头所描述的“9003工号对应的E4单元格为空”也是如此, ISNUMBER(VLOOKUP(I2,A:E,5,0)把9003工号的扣除工资判断为FALSE。

拆解第三步:

这部分内容主要涉及到一个非常常用的函数——IF。IF不过多解释,它的功能很强大,主要用来判定是否满足某个条件,如果满足返回一个值,如果不满足返回另外一个值。

下面我还是做个简单的演示给大家看下:

上表中我们可以很容易理解=IF(F6=FALSE,"",E6)函数公式。那么我们可以直接用ISNUMBER(VLOOKUP(I2,A:E,5,0)代替F6,双引号中间没有任何字符表示空白,VLOOKUP(I2,A:E,5,0)代替E6。最后就形成了我们文章开始所出现的函数公式:=IF(ISNUMBER(VLOOKUP(I2,A:E,5,0))=FALSE,"",VLOOKUP(I2,A:E,5,0))

其实文章中相信大家最陌生的函数就是ISNUMBER。我们下期教程将详细地跟大家分享IS系列函数使用方法。欢迎一起学习哦!

扫一扫添加老师微信


扫一扫,在线咨询Excel课程

Excel教程相关推荐 


你一定要了解:公式没错Vlookup仍找不到数据的3大原因

Excel教程:Vlookup函数快速核对人员的薪资变动

Excel教程:账龄分析,Vlookup+透视表(超级实用)

想要全面系统学习Excel,不妨关注部落窝教育《一周Excel直通车》视频课或者《Excel极速贯通班》

《一周Excel直通车》视频课

包含Excel技巧、函数公式、

数据透视表、图表。

一次购买,永久学习。


最实用接地气的Excel视频课

《一周Excel直通车》

风趣易懂,快速高效,带您7天学会Excel

38 节视频大课

(已更新完毕,可永久学习)

理论+实操一应俱全

主讲老师:滴答

 

Excel技术大神,资深培训师;

课程粉丝100万+;

开发有《Excel小白脱白系列课》

       《Excel极速贯通班》。

原价299元

限时特价 99 元,随时涨价

少喝两杯咖啡,少吃两袋零食

就能习得受用一生的Excel职场技能!

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多