万能查找函数​XLOOKUP的用法

发布日期:2024-10-14 15:41    点击次数:89

一、语法和参数

1. 语法:

=XLOOKUP(lookup_value, lookup_array, return_array, [if_not_found], [match_mode], [search_mode]) 

语法解释:=XLOOKUP(查找值,查找数组,返回数组,未找到值,匹配模式,搜索模式)

2. 参数

1. 必需参数三个:

① lookup_value,要搜索的值;

② lookup_array,要搜索的区域或数组;

③ return_array,要返回的区域或数组。

2. 可选参数三个:

① [if_not_found],找不到匹配值;

            返回指定参数[if_not_found];

            如果未指定参数,则显示#N/A;

② [match_mode],指定匹配类型;

     0   未找到匹配值,则显示#N/A

    -1   未找到匹配值,则返回较小值

     1   未找到匹配值,则返回较大值

     2   通匹符

③ [search_mode],指定搜索模式。

     1  从第一项开始搜索

    -1  从最后一项开始搜索

     2   按升序搜索

    -2   按降序搜索

图片

三、函数示例

1.  纵向查找                                                             

以下图表格为例,根据姓名查找得分。可以输入公式:

=XLOOKUP(D2,A2:A11,B2:B11)

图片

整个公式的含义是,使用XLOOKUP函数,查找“林冲”在姓名列的位置,并返回得分列的相应位置对应的得分。

如果使用VLOOKUP函数的话,公式为:

=VLOOKUP(D2,A2:B11,2,0)

2. 横向查找

以下图表格为例,姓名行在上面,得分行在下面。根据姓名查找得分。可以输入公式:

=XLOOKUP(A6,A1:K1,A2:K2)

公式说明:查找值H2,查找区域为B1:E1,返回区域为B2:E2。

图片

VLOOKUP函数不能横向查找,如果使用HLOOKUP函数的话,公式为:

=HLOOKUP(A6,B1:K2,2,0)

3. 逆向查找 

如果需要查找的目标值在左边,需要进行逆向查找。如下图,姓名列在右边,得分列在左边。根据姓名从右向左查找得分。单元格G2,输入公式:

=XLOOKUP(F2,C2:C5,B2:B5)

公式说明:查找值F2,查找区域为C2:C5,返回区域为B2:B5。

图片

使用VLOOKUP函数也能实现逆向查找,但是比较复杂,公式如下:

=VLOOKUP(E2,IF({1,0},$C$2:$C$11,$B$2:$B$11),2,0)

4. 查询失败匹配值

如果查询的结果没有匹配值,查询失败默认显示“#N/A”。如果给公式加上第四个参数:匹配值,则查询失败会显示匹配值。

如下图,要根据姓名,查找得分,输入公式:

图片

公式1:=XLOOKUP(D3,A3:A12,B3:B12)

公式说明:查找值F2,查找区域为A3:A12,返回区域为B3:B12。这个公式因未指定第四个参数,则默认显示“#N/A”。

图片

公式2:=XLOOKUP(D3,A3:A12,B3:B12,'无')

公式说明:查找值D3,查找区域为A3:A12,返回区域为B3:B12,未找到匹配值 则显示“无”。

5. 区间查找

如下图,要根据【分值】区间,查找【积分】。输入公式,向下填充:

=XLOOKUP(D3,(ROW($A$1:$A$11)-1)*10,$B$3:$B$13,,1)

公式说明:查找值D3,查找区域为(ROW($A$1:$A$11)-1)*10(构建数组),返回区域为$B$3:$B$13,指定匹配类型1;

注意:查找区域使用函数嵌套构建数组,指定匹配类型1(即未找到匹配值,则返回较大值);

图片

5. 指定搜索模式(有重复值的数据查找)

我们可以指定查找模式:从第一项往后查找、从最后往前查找。

如下图,要根据姓名,查找得分,这里出现了相同值。输入公式:

=XLOOKUP(E2,A2:A5,B2:B5,,,-1)

公式说明:查找值E2,查找区域为A2:A5,返回区域为B2:B5,搜索模式为-1。(因为这个参数是第六参数,所以,需要加多2个逗号“,”;这个能理解吗?)

如果不输入任何参数的话,默认是从第一项开始往后查找,结果就是94。

图片

6.  交叉查找

如下图,要根据姓名和季度,查找交叉值。输入公式,向右填充:

=XLOOKUP(H2,$B$2:$E$2,XLOOKUP($G3,$A$3:$A$12,$B$3:$E$12))

图片

公式说明:查找值H2,查找区域为$B$2:$E$2,返回区域为XLOOKUP($G2,$A$3:$A$12,$B$3:$E$12)。

注意:因为需要向右填充,所以要注意参数的相对和绝对引用;

以上就是,XLOOKUP函数的常用的几种用法,有兴趣的朋友可以进一步研究。

END

图片

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报。

上一篇:没有了
下一篇:python爬取双色球20年来的历史开奖数据