实际返回的行数超出请求的行数怎么解决_谁说LOOKUP只能模糊查询,有了这个万能公式,想怎么查都行...

f26639b1472dd982acf79703f2fa95e7.png

前言

每当说起在Excel中的查询函数,必提的就是VLOOKUP,虽然功能强大,但是限制是比较死板的,要查询的数据必须位于区域的第一列,而且是单条件查询,在有特殊需求的时候,肯定就会使用到函数嵌套了,显得比较麻烦……,而替代方案,无外乎就两种了,(1)升级版本,换功能强大的软件;(2)找其他的替代函数;如果想升级软件版本的话,Office365就是一个不错的选择,在里面有新增加的xlookup函数,想怎么查询都可以的。但是office365必须安装在win10系统中,而且买新软件都要再付费,对于单位里面的资本家来说,旧版本还能用,才不会舍得花钱再升级呢。另外一种方法,就是找替代函数了,其中LOOKUP函数,看形式上,和前面的VLOOKUP函数非常相似,可以认为能实现VLOOKUP,HLOOKUP几乎所有的功能,而且他们是同根同族,用法都是差不多的,学习门槛低,只要会一个,其他都基本上学会了;还有就是index+math被称为查询的万精油函数,想怎么查都可以(下篇文章介绍)。

函数结构

函数语法:LOOKUP(查询值, 查询的行或列,[返回结果行或列])

LOOKUP 有两种使用方式:向量形式和数组形式,其中使用最多的就是向量形式;而数组形式是为了和其他的软件兼容的,这种形式微软的官方都不推荐,所以我们就学向量形式就可以满足工作作用的需要了;第一个参数,查询值,可以是文本,数字,逻辑值,或者是某单元格的引用;

第二个参数,查询的行或列,单行或者是单列,但是要求其值必须按升序排列,升序排列,升序排列(重要事情说三次,这是默认规定的):什么是升序呢,也就是说:……, -2, -1, 0, 1, 2, ……, A-Z, FALSE, TRUE;如果不是升序,LOOKUP 可能无法返回正确的值,而 文本不区分大小写。

第三个参数,可选的,也就是说,可以不输入,如果输入的话,就输入单行行或单列,而且必须与第二个参数的行数或者列数相同。

第四个参数,其实LOOKUP函数要比VLOOKUP函数少一个参数,所以根本就没有第四个参数;但是若VLOOKUP函数不输入第四个参数,默认为TRUE,也就是实现模糊匹配,所以和LOOKUP函数功能一样

典型用法:

例1,常规用法,根据姓名查成绩

原始数据如下

e7730760deaa37f6fa073d46a8a2e01c.png

公式如下

163187292448933635056963cf9620fd.png

这是一个不太完美的用法,需要将姓名按照升序排列才能查询出正确的结果;如果不是升序排列就会出错,明白为什么?不明白请重读上面函数解释第二个参数;例2:万能公式(单条件,多条件均适用),记住就搞定90%+查询原始数据表

b678fca79c2648ba5e2ce7b4894e3862.png

和例1是一样的,只是按照班级排序,这样更符合实际的习惯;公式如下:=LOOKUP(1,0/($F$3:$F$15=B2),$G$3:$G$15)

0d89bf86b47025c879d79687b4c7bc9d.png

公式释义:公式中,比较复杂,就在第二个参数,其中$F$3:$F$15=B2中是判断$F$3:$F$15中的单元格值是否等于B2单元格的值,如果相等就返回TRUE,不相等就返回FALSE。但返回的这逻辑值是作为除数,而0作为被除数的,而在算数运算中,TRUE被当成1,FALSE被当成0,作为除数就会出错,所以如果名字相等返回TRUE,0/TRUE结果为0,而0/FALSE的结果是一个错误值 #DIV/0!;所以,执行的结果是只有等于B2单元格姓名的返回结果是0,而其他的都是#DIV/0!而LOOKUP在查询1的时候,会忽略错误值,只有名字对应的结果为0,所以就返回名字所对应行的成绩;例3,多条件万能公式原始数据

0417c4f25a9fa809b110b1159a5e9cb4.png

这次为了能表示出多条件,修改了几个姓名,比如两个班级均有兆美

e2ee4ff1a6e0a6ddc1fa5146c003e95c.png

公式 =LOOKUP(1,0/(($F$3:$F$15=B3)*($E$3:$E$15=A3)),$H$3:$H$15)公式释义:公式和例2是一样的,只是在第二个条件中,多了一个条件,所以采用了括号的形式来写,(($F$3:$F$15=B3)*($E$3:$E$15=A3)),即班级相等返回TRUE,否则就是FALSE,姓名也是类似的道理,然后两个括号中的一系列结果相乘,TRUE当成1,FALSE当成0,所以只有在TRUE*TRUE的时候,结果才等于1 ,其余都为0,后续的运算就和例2的一样了如果有更多的条件,也可以一并写在参数二部分;可以关注我们公众号哦,别走开,后续节目更精彩

3e0b9ca65858ddcf0e2f19ae34a65c17.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值