软件下载 点击激活 软件下载

这样用LOOKUP,比一般的查找好用百倍!

大家好,之前我们介绍过 Lookup 函数的基本用法。(文章见文末!)
 
=LOOKUP(lookup_value,lookup_vector,[result_vector])=LOOKUP(查找值,查找区域,[返回区域)
提到过:使用 Lookup 函数时,必须先对第二参数「查找区域」进行升序处理。
 
这时就有小伙伴纳闷了:写函数公式,还要时刻注意给原来的数据排序,这也太麻烦了!
 
别急!不想排序的话,Lookup 也有办法。
 
请往下看!这样用LOOKUP,比一般的查找好用百倍!
这样用LOOKUP,比一般的查找好用百倍!
单条件查询
 
 
如下图,根据姓名查询年龄:
 
这样用LOOKUP,比一般的查找好用百倍!
 
看起来好复杂啊!
 
不怕,以 G5 单元格中的公式为例,我们先来看看公式解析~
=LOOKUP(1,0/(F3=B3:B12),D3:D12)
❶ F3=B3:B12 先判断 B3:B12 (姓名列)是否等于 F3(”杨山”)。
 
如果是,则返回 True,否则返回 False。这时形成由 True 和 False 组成的数组。
 
❷ 0/({FALSE;FALSE……}),用 0 除以判断结果形成的数组。
 
0/TRUE=0,0/FALSE=#DIV/0!(在四则运算中,True 相当于 1,False 相当于 0),形成由 0 和#DIV/0!组成的数组。
 
如下图所示:
这样用LOOKUP,比一般的查找好用百倍!
 
❸ Lookup 函数先在「查找区域」中查找与 1 匹配的值。
 
如果找不到,则继续找小于且最接近查找值的数值。
 
在「查找区域」中 0 最接近 1,所以结果返回 0 对应的 D3:D12 中的数据(85)
 
这样用LOOKUP,比一般的查找好用百倍!
 
PS:Lookup 函数是根据二分法进行跳跃式查找的,它会忽略#DIV/0!错误值,所以查找区域中仅存在数值 0,且 0 也是小于等于 1 的数值。
 
简言之,这个公式的关键在于第 2 参数:
 
0/(F3=B3:B12)生成一个由数值 0 和错误值#DIV/0! 组成的数组。
 
再从这个数组中找到小于或等于 1 的最大值 0,最后返回第 3 参数:D3:D12 对应的值。
这样用LOOKUP,比一般的查找好用百倍!
 
👉 敲黑板:
 
当我们碰到单条件查找的问题时,可以按照下面的公式直接套用!

=LOOKUP(1,0/(条件=条件区域),返回区域)
看案例!
如下图,我们需要根据姓名查询性别:
 
这样用LOOKUP,比一般的查找好用百倍!
以 F3 作为条件,B3:B12 为条件区域,C3:C12 为返回区域,套用:
=LOOKUP(1,0/(条件=条件区域),返回区域)
得到 G3 单元格公式:

=LOOKUP(1,0/(F3=B3:B12),C3:C12)

既然有单条件查询的套路公式,那自然有 Lookup 函数多条件查询的套路公式。
 
继续往下看!这样用LOOKUP,比一般的查找好用百倍!
这样用LOOKUP,比一般的查找好用百倍!
多条件查询
 
 
Lookup 函数多条件查询的套路公式:

=LOOKUP(1,0/((条件 1=条件区域 1)*(条件 2=条件区域 2)*…*(条件 n=条件区域 n)),返回区域)
看案例!
 
如下图,根据采购日期和货品名称,查找对应的单价。
 
这样用LOOKUP,比一般的查找好用百倍!
条件 1:F3 也就是采购日期
条件区域 1:B3:B8
条件 2:G3 也就是货品名称
条件区域 2:C3:C8
返回区域:D3:D8
在 H3 单元格中,直接套用公式:
=LOOKUP(1,0/((F3>=B$3:B$8)*(G3=C$3:C$8)),D$3:D$8)
前面讲的都是文本的精确匹配,那如果是文本的模糊匹配,我们应该怎么做呢?
 
这个还有没有套路公式哇?
 
这时候我们还需要借助一个 FIND 函数~
 
欲知详情,往下看!这样用LOOKUP,比一般的查找好用百倍!
这样用LOOKUP,比一般的查找好用百倍!
模糊查询
 
 
Lookup 函数模糊查询的套路公式:

=LOOKUP(1,0/FIND(查找区域,查找值),返回区域)

看案例!根据类别(简称)查商品名称(全称)
这样用LOOKUP,比一般的查找好用百倍!
查找区域:E3:E10,也就是类别列
查找值:B3
返回区域:E3:E10
在 C3 单元格中,直接套用公式:
=LOOKUP(1,0/FIND(E$3:E$10,B3),E$3:$E10)
简单解释一下,这个函数公式运算的原理~
 
Find 函数基本语法:
 
Find 是用来返回一个字符串在另一个字符串中出现的起始位置(区分大小写)
 
=FIND(find_text,within_text,[start_num])=FIND(查找值,在哪里找,从第几个字符开始查找)
以 C3 单元格公式为例:
=LOOKUP(1,0/FIND(E$3:E$10,B3),E$3:$E10)
如下图所示:
 
这样用LOOKUP,比一般的查找好用百倍!
❶ 利用 Find 函数查找「简称在全称的位置情况」,如果找得到,数组对应就是位置的起始位置;如果找不到,则对应返回#VALUE 错误值。
查找值:类别列
在哪找:男童舒适适气棒球便服黑色男童便服
❷ 0/({#VALUE;#VALUE……}),用 0 除以 find 函数查找的结果形成的数组,0/错误值=错误值,0/数值=0,最后形成由 0 和#VALUE 组成的数组。
 
❸ 由于 Lookup 函数可以忽略错误值,所以,Lookup 函数先在查找区域中查找小于等于 1 的最大值,也就是 0,最后返回 0 的对应区域,也就是「便服」。
 
这样用LOOKUP,比一般的查找好用百倍!
 
看到这里,大家是不是对 Lookup 函数的特殊用法:Lookup(1,0/(条件区域))有了进一步的认识呢?
这样用LOOKUP,比一般的查找好用百倍!
总结一下
 
 
❶ Lookup 函数第 2 参数可以通过构造 0/(条件)的形式,实现在乱序中进行查找。
 
❷ Lookup 函数三种经典用法:
 
① 单条件查询经典用法:
=LOOKUP(1,0/(条件=条件区域),返回区域)

② 多条件查询经典用法:


=LOOKUP(1,0/((条件 1=条件区域 1)*(条件 2=条件区域 2)*…*(条件 n=条件区域 n)),返回区域)

③ 模糊查询经典用法:

=LOOKUP(1,0/FIND(查找区域,查找值),返回区域)
以上 Lookup 乱序查找的 3 种经典用法,你们看懂了吗?

网络技巧:家庭宽带使用小常识,值得收藏
END
网络技巧:家庭宽带使用小常识,值得收藏

往期推荐
1. Office365/2021/2019/2016/2013/2010官方永久激活密钥(可绑定账号)
2.  软件库(软件下载)
3.  CorelDRAW 2021破解版下载&安装步骤
4.  Google Earth Pro 7.3 |(谷歌地球)安装教程
5.  最新行政区划、乡镇级、村级shp矢量地图、2022道路、水系、建筑轮廓
这样用LOOKUP,比一般的查找好用百倍!
Office自学网公众号
这样用LOOKUP,比一般的查找好用百倍!
Office自学网客服

打开微信扫一扫,Office自学网

专注分享软件安装和视频教程,让你一号在手,办公无忧!

给TA打赏
共{{data.count}}人
人已打赏
办公技巧

表格粘贴后,怎么才能不变形?

2024-11-10 16:40:29

办公技巧

电脑技巧:关于电脑的十大误区,你知道哪几个?

2024-11-11 15:49:20

文章版权声明 1、本网站名称:office自学网
2、本站永久网址:https://www.officezxw.com/
3、本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长QQ:1241926466进行删除处理。
4、本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
6、本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索