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,其他函数也同样可以。

相关推荐
X@AKS19 小时前
解决使用EasyExcel导出带公式的excel,公式不自动计算问题
excel
Wang2012201319 小时前
wps excel中把特定几列除以某一列,然后以百分比显示
excel
LilySesy20 小时前
ABAP+在select的时候,可以A=B A=C B=C这样子JOIN吗?
数据库·sql·ai·excel·sap·abap
zhishidi1 天前
Excel表格自适应大小设置方法
excel
缺点内向1 天前
C#: 高效移动与删除Excel工作表
开发语言·c#·.net·excel
程序员晚枫2 天前
Python处理Excel的5个“神仙库”,办公效率直接翻倍!
python·excel
_处女座程序员的日常2 天前
如何预览常见格式word、excel、ppt、图片等格式的文档
前端·javascript·word·excel·开源软件
best_scenery2 天前
excel T检测时[检验类型]参数设置的方法
excel
路漫漫其修远.2 天前
解决excel复制页面行高无法复制的问题
excel
办公解码器2 天前
超链接查看太麻烦,Excel怎么快速提取单元格内的超链接地址?
excel