excel vlookup多个条件匹配多列_VLOOKUP查找值有重复,这样处理可以匹配到多个值...

今天介绍VLOOKUP函数查询“一对多”,也就是VLOOKUP查找值有重复,需要返回多个结果。

VLOOKUP语法

“=VLOOKUP(查找值,数据表,序列数,[匹配条件])”。

解释:“=VLOOKUP(找谁,去哪些单元格中查找,找到后想要第几列的数据,找个相似的还是找个一模一样的)”,最后一个参数用“1”表示找个相似的,“0”表示找个一模一样的。

示例

例如以下表格。

abc23d4400f6ad9364258e48b2094c59.png

我想要每个班级的同学名单,就用一个VLOOKUP公式拖拉一下,名单就出来啦。

47ccbb5b4508da1d770799ffe1dfca91.gif

小王:忽悠人的吧,我怎么不行呢?

508b62a2c7549ff3e749add7a226cb88.png

答:想让VLOOKUP函数查询后得到多个结果,就需要对原始数据做些处理。

步骤①

添加辅助列,输入公式:

“=B2&COUNTIF($B$2:B2,B2)”。

5e6e911cf0eb5cbeaa69628e45986c6e.png

本来B列数据有很多的重复值,使用了公式“=B2&COUNTIF($B$2:B2,B2)”后,所有重复值后面会自动添加数字编号,这样得到的A列数据就都是唯一值啦。

步骤②

将VLOOKUP公式修改为:

=VLOOKUP(B$4&ROW(A1),数据!$A:$F,3,0)

然后向右向下拖动填充,就会把所有的姓名都查找出来啦。

338a2e30e375b79e6b6b934ca5a7713d.gif

公式中的“ROW(A1)”在向下拖动时,会自动得到数据“1、2、3……”,这就和数据表中的COUNTIF公式结果一一对应起来了,这样VLOOKUP实际就是按照“班级+编号”进行查询的。

步骤③

当表格中的所有姓名都被VLOOKUP查找出来后,再继续填充VLOOKUP公式,就会看到很多的“#N/A”,所以可以在VLOOKUP函数外嵌套一个IFERROR函数,即:

=IFERROR(VLOOKUP(B$4&ROW(A1),数据!$A:$F,3,0),"")

这样就得到了如下的数据。

d50185328f6a3b4969eabca8876214ea.png

变通

例如,想按照分数查找。

和上面的步骤没什么两样,只要稍微修改下公式。

也就是将辅助列公式中的“B”修改为“E”。VLOOKUP函数不必修改,也将自动获得新的查询结果。

be21edf1f5fdeed904c1ed088108fcb0.gif

你也许会觉得辅助列的这些文本型数字看起来不舒服,那也可以给它添加一些字母,如“A-”等。

31e91228dc1d6f67af35ff654f02f3ed.png

唯一需要注意的时,你创建了怎样的辅助列,VLOOKUP函数查找项就需要怎样的修改。根据需要,你还可以将ROW函数替换成COLUMN函数或其他函数。

现在,不管是按照班级、等级、分数、物料编号等查找,你都会了吗?


本文由解晴新生原创,欢迎关注,带你一起长知识!

### 使用VLOOKUP函数实现多条件匹配Excel中,当需要基于多个条件查找特定的数据时,可以通过组合`VLOOKUP`和其他辅助函数来完成这一需求。一种常见的方法是通过连接字符串的方式创建唯一的键来进行匹配。 #### 方法一:使用数组公式与`IF` 对于两个条件的情况,可以利用数组公式以及`IF`函数构建复合键: ```excel =VLOOKUP(条件1&条件2, IF({1,0}, 条件1范围&条件2范围, 结果范围), 2, FALSE) ``` 此公式的逻辑在于先将两个条件拼接成一个新的唯一标识符,并在同一区域内建立相应的映射关系[^2]。 注意,在输入上述公式之后需按 `Ctrl + Shift + Enter` 组合键确认,使其成为数组公式。 #### 方法二:借助辅助列 另一种更为直观的做法是在原始数据旁边增加一个辅助列用于存储由各条件组成的联合键。例如,如果希望依据部门和地区两项属性去检索员工姓名,则可以在源表新增加一列表达式为`=B2&C2`(假设部门位于B列而地区处于C列),从而形成新的索引字段;接着再应用标准形式的`VLOOKUP`即可达成目标。 #### 方法三:采用`INDEX`和`MATCH`配合 除了直接修改`VLOOKUP`外,还可以考虑运用`INDEX`搭配`MATCH`的方式来间接支持多关键字查询: ```excel =INDEX(结果范围, MATCH(1, (条件1范围=条件1)*(条件2范围=条件2), 0)) ``` 这里同样需要用到数组公式特性,即按下 `Ctrl + Shift + Enter` 完成录入。这种方式的优势在于灵活性更高,允许更复杂的模式定义[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值