excel的XLOOKUP的快速多列关联查询

我们前几章上面介绍了,根据某国产品牌官网介绍的使用&连接来进行多列关联查询,非常的慢。有没有公式可以快速进行XLOOKUP多列关联查询,我们找到了一个速度还可以的办法。

原理:有几列需要关联查询,我们就写几个XLOOKUP的单列查询。然后用AND语句,检查这些XLOOKUP的结果是否正确。再用IF语句,将AND作为逻辑值。用其中一个XLOOKUP的单列查询作为真值,null作为假值。这样的语句,比用&连接的语句效率要高非常多,100万条数据大概只需要30秒左右就计算出来了。

来看一下公式:

=IF(

AND

(

XLOOKUP(B2,Sheet2!B2:B8,Sheet2!D2:D8,"NULL")<>"NULL",

XLOOKUP(C2,Sheet2!C2:C8,Sheet2!D2:D8,"NULL")<>"NULL",

XLOOKUP(D2,Sheet2!E2:E8,Sheet2!D2:D8,"NULL")<>"NULL"

)

,XLOOKUP(C2,Sheet2!C2:C8,Sheet2!D2:D8,"NULL"),"NULL")

上面的公式,看起来有点吓人,我们用颜色做了区分。它的意思就是:如果b、c、d三列都相等,用xlookup取d列的值。

在excel2021以上版本测试,速度很快。在国产某品牌也测试过,不公布结果。

这种IF(and(),,)或者IF(OR(),,)或者二者组合的模式,将单列查询变成多列查询,成为了一种可能。不光适用于XLOOKUP,其他函数也同样可以。

相关推荐
一晌小贪欢12 小时前
Python办公14:批量解压文件夹内的所有 ZIP/RAR 并自动分类
开发语言·python·excel·数据可视化·python办公
一入程序无退路12 小时前
Navicat导出Excel格式表名表结构
数据库·excel
louis.D.16 小时前
excel按开头字符筛选
excel
ms365copilot16 小时前
Copilot Excel真实数据实战
人工智能·excel·copilot
Nontee17 小时前
Excel 导出组件改造实录:从 Full GC 到声明式导出
jvm·excel
Metaphor69217 小时前
使用 Python 设置 Excel 文件属性
开发语言·python·excel
西门子918!18 小时前
Office(Excel)常用记录1
经验分享·excel
reasonsummer2 天前
【办公类110-08】20260807园园通-“小班“户籍地址和居住地址补充完整+外省市所在“省市区”两个按钮手工填写(Python+EXCEL)
python·excel·园园通
CC数分2 天前
如何用Excel数据透视分析业务?3分钟出报表
数据分析·excel
ms365copilot2 天前
iPad Excel Copilot,适合打工人出勤做分析数据
excel·copilot·ipad