LOOKUP的语法 首先还是老规矩,我们一起看一下 LOOKUP 函数的语法,函数共有 3 个参数,翻译成东北话分别是: = LOOKUP(找啥, 在哪旮找, 要啥结果) 1. 找啥:要查找的词或单元格引用; 2. 在哪旮找:要查找的区域; 3. 要啥结果:要返回的区域,必须是一行或者一列,查找和返回区域必须大小一致; LOOKUP基础查找 这是最基础的用法了,直接写公式就行: =LOOKUP(D2,A2:B6) 诶,咋不对呢?!哦,要找的东西没有排序,再来一遍!敲黑板啦,A列要先排序,公式才不会报错! LOOKUP实现区间匹配 在数字已经排序的场景下,利用 Lookup 的特性,就可以代替IFS函数,用于简化区间匹配公式。 例如想批量填写销售员的提成比例,使用公式: 因为LOOKUP在找不到匹配数值的时候,会找一个小于匹配数里的最大值进行匹配,这样就可以巧妙实现区间匹配了,不过数据需要进行排序。 这个公式如果要用 IFS 或者 IF 来写,就非常麻烦了,不信你试试。 LOOKUP返回最后一个符合条件的结果 和 VLOOKUP 会返回匹配多条数据中的第一条恰好相反,如果匹配区域中存在多条匹配的数据,则 LOOKUP 函数默认会匹配最后一条。 公式如下: =LOOKUP(1,0/(查找区域=查找值),返回区域) 函数的套路也很简单,用0除以判断条件,只有相符的才不会发生除0错误,使用1进行匹配,即可将对应数值匹配出来。 具体公式在这: =LOOKUP(1,0/(A2:A6=D2),B2:B6) 这个公式也可以用于在未排序的时候对指定值进行查找。 LOOKUP查找最后一个非空内容 除了数值/非数值,LOOKUP还可以查找最后一个非空内容,原理跟上一条公式一样,相当于条件改为“<>''”(不等于空),即: =LOOKUP(1,0/(匹配区域<>''),匹配区域) 例如查找B列的最后一个非空内容,使用公式: =LOOKUP(1,0/(B1:B12<>''),B1:B12) LOOKUP多条件查找 掌握了单条件查找,多条件查找就简单了,只需将多个条件相乘即可。 例如:查找“销售二部在华南区售出的冰箱”的数量,公式就可以这样写: =LOOKUP(1,0/(A2:A11=F2)*(B2:B11=G2)*(C2:C11=H2),D2:D11) LOOKUP查找最后一个非数值内容 “座”在Excel中是一个很特殊的字,放到LOOKUP函数中常用于查找最后一个非数值内容。 例如查找A列最后一个非数值内容,使用公式: 由于LOOKUP查找汉字是按照汉语拼音的顺序来查找的,座(zuò)已经是汉语拼音中的最后一个字了,在EXCEL中对应的编码较大,所以用“座”可以查找区域中最后一个单元格内容。我以前试过,换“座”为其它字符代码较大的汉字也可以查。 LOOKUP模糊查找 LOOKUP函数要实现模糊查找,则需要嵌套 FIND 函数使用。 写法如下: =LOOKUP(9E+307,FIND(D2,A2:A6),B2:B6) 公式中的“9E+307”表示:9*10^307,是Excel允许键入的最大数值 由于 Find 函数会返回字符串所在的位置数值,当找不到时则返回“#N/A”,这里的原理和上一条公式一样,给一个很大的数让 LOOKUP 匹配就可以返回符合条件的最后一个结果。 LOOKUP查找最后一个数值 同样的原理,想要查找最后一个数值,也需要用到“9E+307”。 查找A列的最后一个数字,使用公式: LOOKUP全称查找简称并进行匹配 根据全称去查找简称,用 VLOOKUP 就很难实现了,而LOOKUP则完全没问题。 例如:· =LOOKUP(9E+307,FIND(A2:A4,D2),B2:B4) 注意,这里要将 FIND 函数的两个参数颠倒下位置。 LOOKUP提取开头部分的数值 作为匹配中最难的一道题,在数字+中文+英文的混合中,分别将开头/结尾/任意位置的数值提取出来,其他函数几乎办不到。 而 LOOKUP 可以,套路也很简单,利用 LEFT + 数组公式逐个提取数值匹配。 例如找到最开头的数值,使用如下公式: =LOOKUP(9^9,LEFT( A2,ROW($1:$9))*1) 公式的实现效果如下: LOOKUP提取数据结尾的数值 同样,如果要提取数据结尾的数值,将 LEFT 函数换成 RIGHT即可。 公式如下: =LOOKUP(9E+307,RIGHT( A2,ROW($1:$9))*1) LOOKUP匹配任意位置的数值 相比匹配头和尾,匹配任意位置的数值就非常复杂了,这里需要用到 MID+MATCH+ROW 函数的配合。 公式如下: =LOOKUP(9E+307,MID(A2,MATCH(1,MID(A2,ROW($1:$9),1)^0,0),ROW($1:$9))*1) 看到公式外面的花括号没有?对喽,这个公式要三键结束,否则会报错哦~Ctrl+Shift+Enter 作者:Excel大表姐6 |
|
来自: hercules028 > 《excel》