一、XLOOKUP简介
XLOOKUP 是 Excel 的一个查找函数,用于在表格或数据范围内搜索某个值,并返回对应的结果。它比传统的 VLOOKUP 更强大、更灵活,支持任意方向查找,并且更容易使用。
练习数据集:Excel-Tutorial/XLOOKUP Excel Tutorial File.xlsx at main · AlexTheAnalyst/Excel-Tutorial · GitHub
二、XLOOKUP的多种应用
基本语法:=XLOOKUP(查找值, 查找范围, 返回范围, [未找到时的提示], [匹配模式], [搜索模式])
1、XLOOKUP 基础应用
举例:=XLOOKUP(A3,H2:H10,O2:O10)
EXPLAIN:公式以Toby Flenderson作为查找值,查找范围在Full Name一列,查找成功返回该查找值也就是Toby Flenderson的Email,hit enter就可以成功返回,拉下来可以查找不同对象对应的email。
2、XLOOKUP Multiple Rows返回多列信息
举例:=XLOOKUP(A3,I2:I10,O2:P10)
EXPLAIN:同样以Toby Flenderson为查找值,查找范围在Full Name一列,不同的是返回更多信息,将结束日期End Date和Email邮箱作为返回范围,得到查找对象的结束日期End Date和Email邮箱。
3、XLOOKUP Search Order不同的匹配模式和搜索模式
举例(1):=XLOOKUP(A3,N2:N10,I2:I10,"notfound",-1)
EXPLAIN:以查找日期2001年1月1日为查找对象,开始日期为查找范围,返回查找对象的全名,如果没有找到返回“notfound“,匹配模式为-1,XLOOKUP中的匹配模式有4种:
[匹配模式](可选) | 0 (精确匹配,默认)-1 (小于查找值的最大值)1 (大于查找值的最小值)2 (通配符匹配,支持 * 和 ? ) |
这里的”-1“就代表着 小于2001年1月1日但是最接近这个日期的值,也就是表格里面的1999/3/10,所以返回值是Pam Beasley。
举例(2)使用通配符:
=XLOOKUP(A3&"*",H2:H10,O2:O10,,2) ,
=XLOOKUP("*"&A4,H2:H11,O2:O11,,2)
EXPLAIN:这里我们将匹配模式设置为“2”,即使用通配符来查找,此处只要查找的值前面是Toby,后面不论是什么都算查找成功。第二个同样的,只要后面值是Beasley,前面不论是什么都算查找成功
举例(3):=XLOOKUP(A4,N2:N10,I2:I10,"notfound",,-1)
EXPLAIN:以查找日期2001年6月5日为查找对象,开始日期为查找范围,返回查找对象的全名,如果没有找到返回“notfound“,搜索模式为-1,XLOOKUP中的搜索模式有4种:
搜索模式 | 值 | 说明 | 适用场景 |
---|---|---|---|
1(默认) | 1 | 从头到尾(自上而下或从左到右) | 常规查找,返回第一个匹配项 |
-1 | -1 | 从尾到头(自下而上或从右到左) | 查找最后一次出现的记录(如最新订单) |
2(二分搜索) | 2 | 二分法升序搜索(要求数据已升序排序) | 大幅提升大数据量(如数万行)的查找速度 |
-2(二分搜索) | -2 | 二分法降序搜索(要求数据已降序排序) | 同上,但适用于降序数据 |
这里的“-1”也就是从下往上搜索,返回的值便是Michael Scott,如果输入的搜索模式是1,则返回Toby Flenderson。
4、XLookUp Horizontal水平方向上的查找
举例:=XLOOKUP(I1,H1:S1,H2:S2)
EXPLAIN:以Feburary二月为查找值,从Janurary到December一月到十二月份去查找,查找成功返回对应的Paper数据。
5、XLookUp w SUM与SUM函数叠加使用
举例:=SUM(XLOOKUP(I1,H1:S1,H2:S2),XLOOKUP(J1,H1:S1,H3:S3))
EXPLAIN:=SUM(XLOOKUP(),XLOOKUP())的模式,将二月对应的Paper值和三月份对应的Printer值相加。
6、XLookUp与VLookUp的对比
VLookUp(Vertical Lookup)是 Excel 中的经典查找函数,用于按列垂直搜索数据表的第一列,并返回指定列的值。
基本语法:=VLOOKUP(查找值, 查找范围, 返回列号, [匹配模式])
举例:=VLOOKUP(A3,H2:P10,9,FALSE)
EXPLAIN:此处指以以Dwight Schrute为查找值,查找范围是从Full Name到Email,Full Name即为第一列,Email为第九列,这里的9即返回第九列邮箱的意思,FALSE代表要与查找值完全一致。如果我们新增一列数据信息,公式就要修改为第十列,否则返回信息将不是邮箱,从这里看出,VLOOKUP 需要指定返回第几列,XLOOKUP则不用,显然更加简单灵活。
以上便是对Excel中XLOOUP 公式的详细讲解和与VLOOKUP的对比,感谢阅读!