为什么lookup总是不对(lookup函数匹配的数据不对)
每个函数在使用的过程中都会出错,有些是数据原因导致出错,有些是不懂使用导致出错,今天主要讲后者。
1.帮助理解不透彻导致出错
帮助:为了使 LOOKUP 函数能够正常运行,必须按升序排列查询的数据。如果无法使用升序排列数据,请考虑使用 VLOOKUP、HLOOKUP 或 MATCH 函数。
日期按照升序排序,按节日查找日期却出错了,怎么回事?
=LOOKUP(E2,B:B,A:A)
帮助提到的升序,不是指首列,而是指查找区域升序。现在根据节日查找,就要按照节日升序才行。
2.函数语法理解不透彻导致出错
LOOKUP有非常多的函数语法,稍微不留神就出错。还是刚刚的案例,我在查找区域升序的情况下,添加了2个新内容查找,本来应该都没有对应值才对,结果卢子却有对应日期。
函数语法说明,这种主要针对区间查找,不可乱用!
=LOOKUP(查找值,查找区域,返回值)
普通内容查找,适合用经典查找模式。
=LOOKUP(1,0/(查找值=查找区域),返回值)
经典模式一套进去就对了。
=LOOKUP(1,0/(E2=B:B),A:A)
如果要让#N/A显示空白,可以嵌套IFERROR函数。
=IFERROR(LOOKUP(1,0/(E2=B:B),A:A),"")
3.区域乱用导致出错
在写公式的时候,有的时候我是引用整列,有的时候我是引用有内容的区域。不要看我写得很随意,但实际上这两种不能乱用,一不留神就出错的。
还是刚刚的案例,不过我将B列的节字去掉,这样就变成按关键词查找,用LOOKUP FIND组合,结果全出错。
财务工作中,你是否遇到焦头烂额不知如何解决的问题呢?
在使用FIND函数的时候,别引用整列,只引用有内容的区域,同时区域要锁定,要不然下拉的时候区域就出错,切记!
=IFERROR(LOOKUP(1,0/FIND($B$2:$B$5,E2),$A$2:$A$5),"")
4.偷工减料导致出错
这个主要是针对多条件查找,公式是不会因为数据量变多导致出错,会出错就肯定是公式某个地方写错。
多条件查找,这里超级容易出错,很多学员都是这样直接写公式,这是错误的。
=LOOKUP(1,0/($A$2:$A$10=E2)*($B$2:$B$10=F2),$C$2:$C$10)
正确的方法,应该再加一对括号。
=LOOKUP(1,0/(($A$2:$A$10=E2)*($B$2:$B$10=F2)),$C$2:$C$10)
LOOKUP函数的多条件查找语法:
=LOOKUP(1,0/((查找区域1=查找值1)*(查找区域2=查找值2)),返回区域)
来源:Excel不加班
通知获取
1、下方评论区:领取,并转发收藏;
2、然后点击小编头像,找到私信功能、私我回复:【学习】,即可免费领取