|
|
在日常工作中,excel的查找函数可以称得上是函数的精髓之一,因为查找函数单独使用就可以实现很多日常操作需要,更别说很多复杂的函数往往也会嵌套查找函数使用,常用的查找函数有vlookup、index—match、lookup函数等,这些函数非常相似,有些查找选择这些函数任意一个都可以完成,今天小编给大家介绍一下lookup函数的几种用法,这个函数非常灵活,可以在很多种情况下运用。! E# Y- B) u! [
# @5 a( A7 F9 u4 R2 e
一:基本正向查找与反向查找
6 @* `/ Z4 W9 l# C其实查找本来没有必要分成正向查找或者反向查找,因为vlookup函数用的人实在太多了,vlookup函数进行正向查找比较简单,反向查找稍显复杂,所以正向查找和反向查找会做出区分。
: ]7 X8 _. o5 Q9 D$ {. H, X但是在lookup函数中,正向查找和反向查找的公式完全一样,即公式=lookup(1,0/(条件区域=条件),返回结果区域)。这个格式是lookup函数常用的固定套路,可能比较难以理解,下面就以案例介绍这个函数的含义
0 s% x& r( ]- O1 @/ z以下图中根据姓名查找成绩为例,E2单元格输入的函数=LOOKUP(1,0/($A$2:$A$10=D2),$B$2:$B$10),. z( X6 q; O d2 |- M
在这个函数中,第二个参数的分母部分是($A$2:$A$10=D2),表示判断D2单元格是否等于A2到A10单元格,如果等于返回的结果是true,否则返回的结果是false,此处返回的结果是{FALSE;FALSE;FALSE;TRUE;FALSE;FALSE;FALSE;FALSE;FALSE},即第四个判断为true。9 N# v0 \& @ o/ Q/ y
在0/($A$2:$A$10=D2)中,其实true可以看做是1,false可以看做是0,计算结果只有第四个返回的值为0,其他为错误值,因为0作为分母无意义,此处返回的结果是{#DIV/0!;#DIV/0!;#DIV/0!;0;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!}+ Y& [% N8 f2 h& e$ Q$ ^
在lookup函数查找中,查找的结果会忽略错误值,而第二个参数只有第四个为0,不是错误值,所以第一个参数1在第二个参数中查找,返回的查找结果是第四个数,即“赵云”,第三个参数$B$2:$B$10为返回的结果,即最终计算结果返回“赵云”对应的成绩。3 y+ T2 H% \; D7 b5 x0 w
查找完成后,向下拖动即可填充公式,同理,只要成绩不唯一(此处只为举例),根据成绩反向查找姓名公式含义不变。5 V K* V5 F0 x4 C- U0 u
+ ]( o7 z/ V; T5 ]7 S
二:多条件查找
: |) T2 _3 v2 l: A3 b0 o1 b- h通过上述基本查找的介绍,相信大家对lookup函数的公式含义有一定的了解,其实在多条件查找中,仍然使用的是与基本查找相同的套路,即函数公式=lookup(1,0/((条件区域1=条件1)*(条件区域2=条件2)),返回结果区域)。" j% K' v1 i$ v$ S
下图中根据区域和产品型号查找销量,那么在H2单元格输入的函数公式为=LOOKUP(1,0/(($A$2:$A$21=F2)*($B$2:$B$21=G2)),$C$2:$C$21),这个函数中第二个参数的分母部分发生变化,用乘号连接表示需要同时满足这两个条件,乘号前面和后面的条件判断结果false可以看作为0,true可以看作为1,所以两者相乘返回的结果就是1或者0。最后分母部分返回的结果是{0;0;0;0;0;1;0;0;0;0;0;0;0;0;0;0;0;0;0;0},其他参数的含义就和上面介绍的一样了。6 _& R7 v+ {! O! u+ s' E2 i
9 x( Z" v B5 l4 H0 b2 Q; a' Z
三:模糊查找
& [1 ]. r; k2 e& u在下图中,EF两列为评价标准和评价类型,我们要根据EF列的标准,在C列中显示B列销量数据的评价类型,该如何设置公式呢?# j; ?! t$ ]! H
这种查找的基本函数=lookup(查找依据,查找区域,返回结果区域)。所以我们在C2单元格输入的公式为=LOOKUP(B2,$E$2:$E$7,$F$2:$F$7),其实这个函数可以说是lookup函数的基本用法,lookup函数在查找中,如果查找不到准确的值,那么就会返回到小于查找值的最大值对应的结果,前提是对查找范围进行升序排序,即下图中E列数据按从小到大顺序排列。
3 d; M+ U% c1 J0 J% D在C2单元格中,根据B2单元格的内容在E2到E7单元格中进行查找,因为520在查找区域中没有准确的查找依据,所以返回查找的依据是500,最后返回第三个参数对应的结果,即“一类”。然后向下拖动即可填充公式。& S" Q" S- W' x: } @- e- a

1 j3 Y# }1 f! S3 L四:查找最后一次出现的记录
& U$ R8 E6 o4 R4 F8 m! _% T% _在下图中,如何查找“一班”、“二班”、“三班”对应的最后一个名字及成绩呢?
) d3 w5 i: I5 w/ l' o这里又用到了lookup函数的基本查找了,即F2单元格的公式=LOOKUP(1,0/($A$2:$A$10=E2),$B$2:$B$10)。第二个参数的分母($A$2:$A$10=E2)中的判断结果有两个会返回true,所以0/($A$2:$A$10=E2)返回的结果为{#DIV/0!;#DIV/0!;0;#DIV/0!;#DIV/0!;0;#DIV/0!;#DIV/0!;#DIV/0!},而lookup函数查找不到满足条件的值时,会忽略错误并返回最后一个值。所以此处会查找到班级对应的最后一个姓名和成绩。6 X: I3 M1 p1 G5 N! Q) J
+ L7 z2 T7 B: [- l" I: R
五:根据简称在全称中查找
) T" p b$ c Z( N/ w在下图中,D列是查找依据,AB两列是查找数据源,但是此处查找依据是简称,其他查找函数就不好实现了,利用lookup函数仍然非常容易。
0 p. K/ H$ R7 s/ l' Z4 G3 p+ x% Y: f这种查找的基本公式仍然为=lookup(查找依据,查找区域,返回结果区域)。所以在E2单元格中输入公式=LOOKUP(9^9,FIND(D2,$A$2:$A$5),$B$2:$B$5)即可。第二个参数FIND(D2,$A$2:$A$5)表示D2单元格在A2到A5单元格进行查找,返回的结果为{#VALUE!;#VALUE!;5;#VALUE!},因为只有在第三个单元格可以查到“会计”并且返回的结果为5,即“会计”在“中级财务会计”中第5个字符开始。而其他结果都为错误值,所以9^9查到不到准确结果,忽略错误值后,只会返回5对应的成绩。
. [" C9 W A H6 _* q这里第一个参数9^9只是为了保证准确,此例中A列的单元格最多为8个字符,find函数返回的最大结果也不可能超过8,所以此处第一个参数输入一个9也能返回正确的结果。
5 O. T7 e5 }1 A g" v! p4 n/ l! F
) o. n. b# X0 ]+ d" c3 Z六:根据全称在简称中查找
8 z& j$ ?- o N( R. g. H! v9 @和上面情况相反,如果查找的数据源是简称,我们要根据全称查找对应的内容,该如何操作呢?
3 ?, s% H3 ~3 o* B& k此时在E2单元格输入的公式为=LOOKUP(1,0/FIND($A$2:$A$5,D2),$B$2:$B$5),这个函数和上面的根据简称查找全称十分相似,主要差异是在第二个参数,第二个参数的分母函数为FIND($A$2:$A$5,D2),即查找数据源中的简称在查找依据中的位置,返回的结果是{#VALUE!;3;#VALUE!;#VALUE!},忽略错误值后,会返回第二个参数对应的值。
3 R9 O% o( U: H
( z7 z9 j8 y/ b这就是本文介绍的lookup函数的一些典型用法,可以看到=lookup(1,0/(条件区域=条件),返回结果区域)是lookup函数的常用套路,lookup函数可以忽略错误值并且返回最后一个值或最大值,再加上模糊查找功能,赋予了lookup函数更加灵活的用法。
0 X( t) j) M6 \" q. B4 A& E9 p, ^8 [( |
来源:http://www.yidianzixun.com/article/0M5yonCa
1 \- T/ s& D: [8 @% ]2 m8 U! R免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
×
|