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

相关推荐
似水流年 光阴已逝16 小时前
从Excel姓名匹配案例学Python:由点及面的系统化学习指南
开发语言·python·excel
best_scenery17 小时前
用excel绘制茎叶图
excel·分布图
rannn_1111 天前
【学以致用|python自动化办公】OCR批量识别自动存为Excel(批量识别发票)
python·ocr·excel·财务
小钱c72 天前
Python使用 pandas操作Excel文件并新增列数据
python·excel·pandas
Shi_haoliu2 天前
Vue2 + Office Add-in关于用vue项目于加载项控制excel单元格内容(Demo版)
前端·javascript·vue.js·node.js·html·excel·office
njsgcs2 天前
json转excel python pd
python·json·excel·pd
RECRUITGUY2 天前
Excel中将毫秒时间戳转换为标准时间格式
excel
SunkingYang2 天前
详细介绍C++中捕获异常类型的方式有哪些,分别用于哪些情形,哪些异常捕获可用于通过OLE操作excel异常
c++·excel·mfc·异常捕获·comerror
lied16636348062 天前
List导出到Excel文件
servlet·list·excel
ZhengEnCi2 天前
Excel 文件结构完全指南-从基础概念到 Python 读取的实用宝典
python·excel