Excel中最常用的查找函数无非就是VLOOKUP和LOOKUP,VLOOKUP函数可以做到的用LOOKUP函数也可以做到,VLOOKUP函数不能做到的LOOKUP函数却可以做到。所以今天要跟大家分享的是LOOKUP函数的经典查找方式。

一、LOOKUP函数用法。

LOOKUP函数有2种语法形式:向量法和数组法。今天讲的是向量法。

向量语法形式:LOOKUP(lookup_value,lookup_vector,[result_vector])。

常用函数公式vlookup(精讲LOOKUP公式中1和0的含义)(1)

各参数含义:

lookup_value:要查找的值。可以为数字、文本、逻辑值或包含数值的名称或引用。

lookup_vector:只包含一行或一列的区域。可以为文本、数值或逻辑值。若为数值,必须升序排序,否则,不能返回正确的结果。若为文本,则不区分大小写。

result_vector:只包含一行或一列的区域。区域大小必须跟lookup_vector一致。

常用函数公式vlookup(精讲LOOKUP公式中1和0的含义)(2)

二、LOOKUP函数模糊查找实例运用。

模糊查找要求LOOKUP函数第2个参数必须按生序排序,否则不能返回正确的结果。下图中

表1已经对编号做了升序排序处理,表2没有排序。

常用函数公式vlookup(精讲LOOKUP公式中1和0的含义)(3)

要求:分别在2个表中查找编号对应的订单号。

步骤:在下图中的C15单元格中输入公式“=LOOKUP(B15,$B$3:$B$12,$C$3:$C$12)”,按回车键,然后下拉公式至C17单元格。

常用函数公式vlookup(精讲LOOKUP公式中1和0的含义)(4)

在下图中的F15单元格中输入公式“=LOOKUP(E15,$E$3:$E$12,$F$3:$F$12)”,按回车键,然后下拉公式至F17单元格。

常用函数公式vlookup(精讲LOOKUP公式中1和0的含义)(5)

对比上面2张图片,我们发现F15、F162个单元格的查找结果是不正确的,这是为什么呢?这是因为我们一开始所说的lookup_vector必须升序,否则就会出现上图所看到的结果。

那么,很多情况下我们并不能对数据做升序排序,在lookup_vector没有排序的情况下,我们怎样才能查找到正确的结果呢?下面就是我要跟大家讲解的重点,采用LOOKUP函数经典语法来解决,该语法如下:

LOOKUP(1,0/(条件),查找区域或数组)

如果条件有多个,语法如下所示:

LOOKUP(1,0/((条件1)*(条件2)*(条件3)*...*(条件N)),查找区域或数组)

语法中的1和0分别表示什么?首先,0/(条件)中的“条件”是一组逻辑值或由逻辑值运算得到的由TRUE和FALSE组成的数组,因此:0/(条件)相当于构建一个由0和错误值#DIV/0组成的数组。如果条件为真,返回TRUE,条件为假,返回FALSE,0/(条件)相当于0/TRUE=0,0/FALSE=#DIV/0。整个公式的意思是:要在一个由0和错误值#DIV/0组成的数组中查找1,很明显找不到,那就返回最接近于1的值,也就是0,用大于0的数值来查找0,肯定可以查找最后一个满足条件的。

所以不管有没有排序,利用LOOKUP函数的经典语法,下图中C15单元格的公式可改成“=LOOKUP(1,0/(B15=$B$3:$B$12),$C$3:$C$12)”。

常用函数公式vlookup(精讲LOOKUP公式中1和0的含义)(6)

F15单元格的公式可改成“=LOOKUP(1,0/(E15=$E$3:$E$12),$F$3:$F$12)”。

常用函数公式vlookup(精讲LOOKUP公式中1和0的含义)(7)

这样子不管数据源有没有排序,用了上面的语法,结果都是正确的。这就是这期教程跟大家讲解的重点,记住模板语法“LOOKUP(1,0/((条件1)*(条件2)*(条件3)*...*(条件N)),查找区域或数组)”,理解语法中1和0的含义,以后就可直接套用这条公式,学起来吧!

关注我,每天都可以让您学到一个实用的办公技巧!

觉得文章对您有帮助,可以任意赞赏,转发,点赞,有问题可在评论区直接留言!

,