excel的VLOOKUP的使用(批量匹配数据)

场景

有这样一个场景:需要根据学号来匹配,获取学号对应的年级。

我们需要通过A列的学号和E列的学号匹配后将F列年级赋值给C列。

解决方案

可以用到VLOOKUP函数来完成批量的匹配。

例子:=VLOOKUP(A2,$E:$F,2,FALSE)

参数说明:
参数一:A2。表示要查找的值为1001。
参数二:$E:$F。表示要查找的区域,从E列到F列,也就是映射关系。
参数三:2,表示返回的数据在第2列,即年级。(上面返回的数据有两列,第一列学号,第二列年级)。
参数四:FALSE。表示精确匹配。

我们在C列第二行输入函数后,双击单元格右下角可以填充一整列。

优化

发现有学号为1003的数据没匹配上,我们可以通过IFERROR给没找到数据赋值。

=IFERROR(VLOOKUP(A2,$E:$F,2,FALSE),"未找到")

参考文章:excel——vlookup函数的使用(快速批量匹配)_vlookup批量向后拉方法-CSDN博客

### 使用 VLOOKUP 函数返回多行总值的方法 为了实现通过 `VLOOKUP` 查找并汇总多个匹配项的结果,由于 `VLOOKUP` 默认只返回首次找到的匹配值,因此需要结合其他函数来完成这一目标。一种常见的方式是使用数组公式配合 `SUM` 和 `IF` 或者现代版本Excel中的动态数组特性。 #### 方法一:使用 SUMIFS 替代方案 如果目的是基于某个条件(如特定的学生ID)获取所有符合条件记录的某一列数值之和,则推荐直接采用 `SUMIFS` 函数而非尝试让 `VLOOKUP` 返回多行再求和: ```excel =SUMIFS(C:C,A:A,E2) ``` 这里假设 A列为学生编号,C列为要相加的成绩所在列;E2是要查询的学生编号单元格位置[^1]。 #### 方法二:利用 INDEX-MATCH 结合 SUMPRODUCT 实现多行查找求和 对于更复杂的场景下,可以通过组合 `INDEX`, `MATCH` 及 `SUMPRODUCT` 来达到目的: ```excel =SUMPRODUCT((A$2:A$10=E2)*(C$2:C$10)) ``` 此表达式的含义是在范围 A2 至 A10 中寻找等于 E2 单元格内的值,并对其对应 C 列内相同行次的数据进行累加操作[^2]。 #### 方法三:适用于 Excel 动态数组支持环境下的方法 在较新的 Excel 版本中(Office 365/Excel 2021),可以直接运用 `FILTER` 加上 `SUM` 完成任务而无需担心数组公式的输入方式: ```excel =SUM(FILTER(C:C,(A:A=E2))) ``` 这段代码会筛选出所有满足给定条件 (即 A 列等于 E2 的那些行),并对这些行里的 C 列元素执行求和运算[^3]。 以上三种途径均可有效解决 "VLOOKUP 返回多行总值" 这类需求,在实际应用时可根据具体的工作簿版本和个人偏好选择最合适的一种实施。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值