夜雨聆风学习资料网

ARTICLE · 1357948

Excel XLOOKUP 多条件查找:同名不同部门也能精准查

Excel XLOOKUP 多条件查找:同名不同部门也能精准查
上篇讲了单条件 XLOOKUP 按工号查人。但现实常遇到这种情况:“张三”在销售部和技术部各有一个,只按姓名查会撞车。这时就要上多条件 XLOOKUP——把“部门 + 姓名”拼成一个联合键再查,精准到个人。

一、核心思路:用 & 拼“联合键”

把多个条件用 & 连成一段文本当“钥匙”,查找区域也用 & 拼成同样格式的钥匙串,就能实现“多条件 = 一个条件”。

=XLOOKUP(条件1&条件2, 区域1&区域2, 返回区域, "未找到")

二、原始数据

员工表(注意有两个“张三”,部门不同):

部门
姓名
工资
销售部
张三
8000
技术部
张三
12000
销售部
李四
9000
技术部
王五
11000
财务部
赵六
9500

三、写公式(查询表 C2)

在“查询”表输入部门与姓名,C2 写:

=XLOOKUP(A2&B2, 员工表!A2:A6&员工表!B2:B6, 员工表!C2:C6, "未找到")

读起来:把 A2 部门与 B2 姓名拼成“技术部张三”,去员工表的“部门&姓名”钥匙串里找,找到了就返回对应工资。回车即可,改部门/姓名结果实时变。

图:XLOOKUP 多条件运行结果

可以看到:技术部 + 张三 → 12000,销售部 + 张三 → 8000,两个同名张三被部门条件区分开,不再撞车。

四、进阶:布尔数组法(不用 & 拼接)

如果你嫌拼文本麻烦,还可以用乘法表示“并且”:

=XLOOKUP(1, (员工表!A2:A6=A2)*(员工表!B2:B6=B2), 员工表!C2:C6, "未找到")

(部门列=部门) 与 (姓名列=姓名) 各返回一串 TRUE/FALSE,相乘后只有“都满足”的那行是 1,XLOOKUP 找这个 1 即可。好处是条件可以直接用大小比较(如 工资>10000),拼文本做不到。

五、3 个容易踩的坑

1. & 拼接的区域要一样大。区域1和区域2(以及返回区域)行数必须一致,否则报错。

2. 文本与数字别混。条件若是文本、数据源是数字(或反过来),拼出来对不上,会返回“未找到”;统一格式再查。

3. 版本门槛。XLOOKUP 需 Excel 365 / 2021+ 或 WPS 新版,老版本显示 #NAME?。

回首页,搜索你想要的文档

在首页搜索框输入关键词,快速定位资料

文库首页搜索指引 立即搜索

相关学习资料