使用lookup函数进行模糊查找的实例教程

时间:2019-11-20
阅读:

昨天有同学问了一个模糊查找的问题,用vlookup无法实现,只能把lookup函数搬了出来。

例1:如下图所示表1为省市的提成表,表2的A列是详细地址,要求根据省市关键字从表1中查找相对应的提成。

公式:B10=LOOKUP(9^9,FIND(A$3:A$6,A10),B$3:B$6)

公式说明:

FIND():用FIND查找当前地址中是否包括表1的省市。查找成功返回数字;查找不到返回错误值#VALUE!

9^9:一个足够大的数字。

lookup() : 忽略错误值,查找比9^9小且最接近的数字的位置,并返回B列对应的提成。

例2:如下图所示表1是公司的全称。要求在表2中根据公司的简称查找相对应的B列的应付账款。

公式:B10=LOOKUP(9^9,FIND(A10,A$3:A$6),B$3:B$6)

公式说明:和例1相同,略。

Lookup函数在查找数据方面几乎无所不能,再看3个应用

例3:查找最后一条符合条件的记录。

例4:多条件查找

例5:指定区域最后一个非空值查找

连提取数字也离不开lookup函数

例6:数字在开头

A1的值为 123.45ABC

公式:

=LOOKUP(9^9,LEFT(B1,ROW(1:9))*1)

截取结果:123.45

例7:数字在结尾

A1的值为 ABC123.45

公式: =LOOKUP(9^9,RIGHT(B1,ROW(1:9))*1)

截取结果:123.45

例8:数字在任意位置

A1的值为 ABC123.45FE

数组公式:{=LOOKUP(9^9,MID(A1,MATCH(1,MID(A1,ROW(1:9),1)^0,0),ROW(1:9))*1)}

截取结果:123.45

补充:lookup函数的应用远不止这些,在excel函数中它能实现的查找远远超过vlookup函数。

返回顶部
顶部