有热心网友提议我补充下公式原理,十分感谢~
上篇我们只简单介绍了XLOOKUP函数前三个参数的基本用法,接下来我们来详细了解一下XLOOKUP函数公式的原理和用法。
今天仍然讲前三个参数。
公式=XLOOKUP(查找值,查找数组,返回数组,[未找到时提示], [匹配模式], [搜索模式])
XLOOKUP主要用于在指定的范围或数组中进行查找,并返回相应的值,也就是拿“查找值”在“查找数组”里精准定位,匹配成功后,抓取并返回数组里对应的数据,能支持逆向、双向等查找,与VLOOKUP相比,不用区分左右列、不用数第几列,更不容易出错,是一个很强大的查找函数。
第1个参数:查找值
含义:指定需要查询的值3
这个参数是必选参数,翻译过来,就是要找谁?

例如上篇所讲,我们需要的数据是F2的销量,那么要找谁?找E2饼干,因为想要的数据是饼干的销量。
第2个参数:查询数组
含义:指定查询的单元格区域或者数组
这个参数是必选参数,翻译过来,就是这个“谁”所在的区域或数组。
那么饼干所在的区域或数组是什么,自然是A2到A9这个区域,当然,你要选A1到A9,也一样。在框选A2到A9后,按F4,做绝对引用,则公式输入为$A$2:$A$9。
这里要加绝对引用$,为什么要加?
如果是单纯只想得出F2的结果,那当然不用加,因为A2到A9和B2到B9的区域不动,位置不动,自然能精准查找出对应的数据。

但我们要是还想查出E列虾条、果冻、糖果的销量呢?那么下拉公式的时候,数据就开始跑偏了。
F3(虾条):公式变成=XLOOKUP(E3,A3:A10,B3:B10)
F4(果冻):公式变成=XLOOKUP(E3,A4:A11,B4:B11)
F5(薯片):公式变成=XLOOKUP(E5,A5:A12,B5:B12)
F6(糖果):公式变成=XLOOKUP(E5,A6:A13,B5:B13)
我们可以看到,例如F3(虾条),原数据在A6单元格,但F3的查找区域变成了A3:A10,虽然能找到,但实际区域已偏移。
依此类推,我们看F5(薯片),原数据在A2单元格,但F5的查找区域变成了A5:A12,因此查找不到对应的数据,直接报错#N/A。
所以,如果要下拉公式,就必须要加绝对引用$,这样的话,不管查F3(虾条)、F4(果冻)、F5(薯片)还是F6(糖果),永远都是在A2到A9和B2到B9区域之间查找。
第3个参数:返回数组
含义:指定返回结果的单元格区域或者数组
这个参数是必选参数,翻译过来,就是这个“谁”被找到后,在结果区域或数组,带出它对应的数据。
饼干被找到后,在结果区域或数组即B2至B9,带出它对应的我们需要的销量数据即800。
当然,选B1到B9也是一样,只是要与第2参数相一致。第2参数选了A2到A9,第3参数也要选B2到B9。若第2参数选了A1到A9,那么第3参数就必须选B1到B9。
这是因为XLOOKUP是两组数据精确匹配,所以区域长度要一致,要想找到饼干的销量,那么饼干和饼干对应的销量的位置必须是对应的。
如果第2参数选A1到A9,第3参数选B2到B9,那么饼干的位置在A1到A9的第4序号位,而B2到B9的第4序号位是可乐的销量100。这样的话,两组数据对应不上,直接报#VALUE !错误值。

所以,根据这3个参数,如果想要查找出F2至F6的数据,那么就在F2单元格输入上述刚刚确定好的公式=XLOOKUP(E2,$A$2:$A$9,$B$2:$B$9)
而想要多条件查询的话,就参照前面一篇文章即可EXCEL学习之路:XLOOKUP,更强大更好用的查找函数,只是多了个连接符号&,按住shift+7就可以打出来。
这个连接符号是将两个独立的条件(单元格、文字、数字)合并为一个条件。EXCEL学习之路:快速合并和分列表格内容
如A2=薯片,B2=500,用了连接符号&后,A2&B2,就变成了A2B2,即薯片500。
