听说你还不会Lookup?用过的人都说香,错过后悔1个亿!
对于 Excel 初级玩家来说,他们都会接触到一个查找函数 Vlookup。
只不过,这个函数真的是让人又爱又恨啊!
爱在它强大的查找功能,恨在使用它的时候特别容易出错。
在所有函数里边,它的参数个数太多,语法真的太难记!
Vlookup 函数共有 4 个参数,先来瞧瞧它的基本语法:
=VLOOKUP(lookup_value,table_array,col_index_num,[range-lookup])
一看,吓死人!!!
函数参数越多,就越容易出错。我曾经还总结过,使用 Vlookup 经常犯的五大错误。
喏,就是下面这张图。是不是看到腿软?

▲ 由于图片太大,在后台回复:【纠错宝典】,就可以领取源文件啦~
今天我们就来学学少了一个「V」的查找函数——Lookup 函数。
它的参数个数比 Vlookup 少,注意事项也没有 Vlookup 函数多,跟着我的脚步,一起来看看吧~

根据姓名找年龄
下面有一张表,需要根据姓名来查找年龄。

F3 单元格中输入的公式:
=LOOKUP(E3,B3:C12)
👉 小解析:
这里用到 Lookup 函数的数组形式:
在数组的第一行或第一列查找指定值,并返回数组最后一行或最后一列中对应位置的值。
=LOOKUP(lookup_value, array)
=LOOKUP(查找值,数组)
公式中 E3 为查找值,B3:C12 为数组。
Lookup 函数从姓名列查找 E3 的值("万阳"),返回年龄列对应的值 66。

根据年龄自动分组
下面有一张表,现在要根据年龄来划分组别。
分组的规则如下:
童年:0~6 岁;少年:7~17 岁 ;
青年:18~40 岁 ;中年:41~65 岁 ;
老年:66 岁以后。

在 D3 单元格中,输入以下公式后下拉填充:
=LOOKUP(C3,{0,7,18,41,66},{"童年","少年","青年","中年","老年"})
👉 小解析:
这里用到 Lookup 函数的向量形式:
在一行或一列中查找值,返回另一行或另一列对应位置的值。
Lookup 函数向量形式的语法规则:
=LOOKUP(lookup_value, lookup_vector, [result_vector])
=LOOKUP(查找值,查找区域,返回结果区域)
公式中查找值是 C3,查找区域是{0,7,18,41,66},返回结果区域是{"童年","少年","青年","中年","老年"}
Lookup 函数在「查找区域」查找 小于或等于 「查找值」10 的值是 7,并返回「返回结果区域」对应的值:"少年"。

易错点
有时候用 Lookup 函数在查找某个人年龄的时候,返回的结果却出错了,这是为什么呢?
我们在 G3 单元格中输入公式:
=LOOKUP(F3,B3:B12,D3:D12)
正确的答案应该是 85,但是结果却是 27,一定是哪里出问题了,但是细看公式又没有问题。

其实,出错的原因在于 Lookup 函数的第 2 参数:查找区域必须是「升序」排序。

所以我们在使用 Lookup 函数的时候,需要事先对第二参数的区域进行排序。
如果不想要事先进行升序排序,可以使用如下的经典用法:
=LOOKUP(1,0/(条件=条件区域),返回区域)
PS:经典用法,主要利用了 Lookup 可以忽略错误值的特点。

总结一下
❶ Lookup 函数可以分为数组型查找和向量型查找两种形式。
👉 数组型查找:
=LOOKUP(lookup_value, array)
=LOOKUP(查找值,数组)
👉 向量型查找:
=LOOKUP(lookup_value, lookup_vector, [result_vector])
=LOOKUP(查找值,查找区域,返回结果区域)
❷ 由于 Lookup 函数使用二分法的形式进行查找,所以在使用 Lookup 函数时,第二参数需要注意进行升序排序。
若想在未排序中查找,可以用如下经典用法:
=LOOKUP(1,0/(条件=条件区域),返回区域)
好了,本文到这里先结束了,关于 Lookup 函数更多用法详细解析,我们下一篇文章接着继续探讨~

Lookup 函数有哪些让你又爱又恨的点?你踩过 Vlookup 函数的哪些坑?
一起来留言区「吐槽」~
除了今天介绍的 Lookup 函数,Excel 里还有很多好用的函数,比如 Vlookup、Xlookup、Sumif 等等。
如果你想学习更多关于函数的知识,更多 Excel 小技巧!
那我推荐你参加秋叶《3 天 Excel 集训营》,大神带你学习表格飞速排版、数据高效整理、图表美化设计……!!和志同道合的小伙伴一起交流进步~
欢迎扫码咨询↓↓↓

*广告

