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

相关推荐
程序员敲代码吗5 小时前
Go语言中Channel的实现与内存通信机制详解
excel
时空自由民.9 小时前
vim入门配置教程
编辑器·vim·excel
_院长大人_11 小时前
Java Excel导出:如何实现自定义表头与字段顺序的完全控制
java·开发语言·后端·excel
Cloud_Shy61815 小时前
Python 数据分析基础入门:《Excel Python:飞速搞定数据分析与处理》学习笔记系列(第十一章 Python 包跟踪器 下篇)
前端·后端·python·数据分析·excel
asdzx6717 小时前
使用 C# 打印 Excel 文档(详细教程)
c#·excel
vennnnnnnnnnnnnn17 小时前
Excel 导入原文保留与内联排名配置问题复盘
前端·数据库·excel
anlog18 小时前
Excel返回或设置边框、字体或内部颜色
excel·背景色
工具怪19 小时前
Excel 如何加水印?4种常见使用场景与操作步骤
excel
写了20年代码的老程序员2 天前
Excel 导入导出为什么总是把后端逼成字段搬运工
java·excel
Cloud_Shy6182 天前
Python 数据分析基础入门:《Excel Python:飞速搞定数据分析与处理》学习笔记系列(第十一章 Python 包跟踪器 中篇)
数据库·python·sql·数据分析·excel·web