提到查找,大家都会想到Vlookup,其实还有个兄弟函数也很优秀,只是他太有内涵了,我们需要仔细挖掘才能发现他的才华。它就是今天的主角,Lookup!

Lookup有两种查找形式:

1)、向量型查找,即在一行或一列中查找

2)、数组型查找,即在数行或数列中查找

基本语法

向量型查找

=lookup(lookup_value,lookup_vector,result_vector)

=lookup(查找的值,查找的范围,返回值的范围)

数组型查找

= lookup(lookup_value,array)

=lookup(查找的值,数组)1、基本用法

向量型查找:

查找销量1746对应的业务员:


注意:查找值所在的列必须按照升序排列。

再看下面的例子


查找销量为2000对应的业务员,销量中没有2000,函数会自动按照小于2000中最接近2000的数字进行查找。

数组型查找:通过编号查找销量


利用数组型查找可以做到区间条件判断,如下:


这个太赞了,比用IF爽多了??2、逆向查询

语法:

=LOOKUP(1,0/((条件1)*( 条件2)* ( 条件N)),目标区域或数组)


用0/(F2:F12=I2)构建一个0、#DIV/0!组成的数组,{#DIV/0!;0;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!}

凡是符合条件的都会是0,不符合条件的都是#DIV/0!,由于lookup会顾虑掉错误值,所以上面的数组相当于{0},用1查找0对应的位置。

当然这种用法也适合多个条件查找,请仔细看语法部分。3、查找某列最后一个文本

查找A列最后一个文本

=LOOKUP('々',A:A )

'々'通常被看做是一个编码较大的字符,它的输入方法为组合键。一般情况下,第一参数写成“座”也可以返回一列或一行中的最后一个文本。

4、查找某列最后一个数值

查找A列最后一个数值

=LOOKUP(9E307,A:A)查找A列最后一个数值。


如果A列最后一个单元格既有文本又有数值该怎么办?莫急,我们可以写成这样!

=LOOKUP(1,0/(A:A<>''),A:A)

注意,上面这个公式中整列引用的写法在03版本中不适用,可以写成实际的单元格区域引用。

3、模糊查找

根据吴查找全名


补充:find函数语法:

=find(查找值,在哪里查找,从第几个开始查找)

find返回的结果是查找值相对于查找位置的位置,第三个参数省略,代表从第一个开始查找。

分享是一种美德,共同学习共同成长!