You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何基于Roll no.和session两个条件使用VLOOKUP匹配多列数据

Excel双条件匹配返回多列解决方案

方案1:Excel 365/2021及以上版本(最简单)

直接使用FILTER函数即可自动溢出多列匹配结果,无需手动数组回车:
假设你的两个查询条件分别为:Roll no.存放在B5、session存放在A5,源数据区域为C1:J3,要返回原公式对应的第5-8列内容,公式如下:

=FILTER(G1:J3,(D1:D3=B5)*(C1:C3=A5),"无匹配结果")

公式说明:第一参数为要返回的多列目标区域,后面两个括号分别对应Roll no.、session的匹配条件,乘积逻辑表示同时满足两个条件

方案2:兼容所有Excel版本(适配你原有VLOOKUP使用习惯)

改造原VLOOKUP数组公式,通过拼接双条件实现匹配,输入完成后需要按Ctrl+Shift+Enter三键触发数组计算(公式外会自动生成大括号):

=VLOOKUP(A5&B5,IF({1,0},C1:C3&D1:D3,G1:J3),{2,3,4,5},FALSE)

公式说明:将两个查询条件拼接为一个查询值,用IF构造虚拟查找区域,第一列为源数据session+Roll no.的拼接值,后面为要返回的4列内容,返回列序数对应调整即可

注意事项

  • 条件拼接顺序必须和源数据拼接顺序完全一致,不可颠倒
  • 老版本Excel不要直接按回车确认公式,必须按Ctrl+Shift+Enter三键触发数组运算
  • 如需处理匹配不到的异常,可在外层套IFERROR函数返回自定义提示

参考数据集截图:
数据集截图

内容的提问来源于stack exchange,提问作者Sameer Farooqui

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 11:15:05