Hello,大家好,今天跟大家分享下我们如何使用lookup函数来解决Excel中多条件查询的问题,这个方法比vlookup函数更加的简单,我只需要记得固定的格式罗列公式即可,下面就让我们来看下是如何操作的
一、为什么要使用多条件查询
在Excel中想要利用查找函数查找到正确的结果,就必须要整保证查找值在数据区域的唯一性。如果查找值在数据区域有重复值,那么函数就会返回第一个找到的结果,如下图,在这里想要查找三班李白的总分,但是李白在数据区域中是有重复姓名的,如果我们仅仅使用姓名作为查找值,vlookup就会返回第一个找到的数据,也就是一班李白的186分,这个结果就是错误的,这个时候我们就需要添加条件来找到精确的结果
二、LOOKUP函数的作用
Lookup函数:从单行或者单列中查找一个值
语法:=LOOKUP(lookup_value,lookup_vector,result_vector)
第一参数:需要查找的值第二参数:在那一列中查找数据第三参数:要返回的结果列,需要注意的是第三参数与第二参数的个数必须一一对应
使用lookup函数我们需要注意2点,它与vlookup函数的近似匹配是一模一样的
1.第二参数中的值必须进行升序排序,否则函数可能会返回错误的结果
2如果找不到准确的结果,lookup函数会返回小于或等于查找值的最大值
三、LOOKUP函数多条件查询的方法
在这里我们只需要将公式设置为:=LOOKUP(1,0/((A2:A9=F12)*(B2:B9=G12)),E2:E9)即可查找正确的结果,如下图所示,跟大家简单的讲解下这个函数的计算过程
公式为:=LOOKUP(1,0/((A2:A9=F12)*(B2:B9=G12)),E2:E9)
第一参数:1,查找值第二参数:0/((A2:A9=F12)*(B2:B9=G12)),查找列第三参数:E2:E9,需要返回的结果列
在这主要是来讲解下lookup函数的第二参数,就是我们利用函数构建的这个查找列,他的计算过程如下图所示
A2:A9=F12与B2:B9=G12它们的结果都是一个逻辑值,如果条件正确就返回true这个结果,条件错误就会返回false这个结果,我们可以将true看作是1,false看做是0,两者相乘就会得到一列0和1组成的数据,只有两个结果都是true它们相乘的结果才是1
随后我们用0除以这一列数据,分母为0函数就会返回错误值,只有结果是1才会返回0这个结果,lookup函数会自动的将错误值忽略掉,这样的话数据区域中就只剩下0这个数据,也就不用升序排序了。查找值是1,而在数据区域中是没有的,所以函数就会返回小于查找值的最大值,也就是0对应的结果,这个就是函数的计算过程
如果说你实在是看不懂,只需要记得这个格式即可:=lookup(1,0/((条件1)*(条件2)*(条件3)),结果列),条件有几个就写几个
以上就是今天分享的方法,怎么样?你学会了吗?