找出Excel表格符合多列条件的值
作表中有多列,其中有些列的值是相同的,我们要找到同时符合几列条件的值。例如下图所示的工作表,列A中是学生姓名,有重复,列B中是科目,列C中是考试成绩。现在,我们需要找出某学生的某科目的成绩。
例如,要找出张三的物理成绩。在工作表中,一眼就可以看出是80,但是如果学生多了呢?就不好找了!
如何使用公式找出张三的物理成绩?
先不要看下面的答案,自已试一试。
公式思路
将列A和列B的值结合,用作供搜索的具有不重复值的列表;将张三和物理结合,用作搜索的字符串。找出行号后,其对应的列C中的值即为成绩。
公式解析
解法1:使用辅助列+普通公式
在单元格F2中输入公式:
=A2&B2
下拉填充公式,得到供搜索的具有不重复值的列表,如下图所示:
在单元格H2和I2中放置要查找的值,那么在单元格H4中输入查找公式为:
=INDEX(C2:C15,MATCH(H2&I2,F2:F15,0))
结果如下图所示:
MATCH函数在单元格区域F2:F15中搜索由H2和I2组合的字符串,得到相匹配的值所在的行号,INDEX函数在区域C2:C15中找到相应行的值。
解法2:使用数组公式
在单元格H4中输入数组公式(公式输入完后要按Ctrl+Shift+Enter组合键):
=INDEX(C:C,MATCH(H2&I2,$A$1:$A$15&$B$1:$B$15,0))
结果如下图所示:
公式中:$A$1:$A$15&$B$1:$B$15将得到下面的数组:{“学生姓名科目”;”张三语文”;”张三数学”;”张三英语”;”张三物理”;”张三化学”;”张三生物”;”李四语文”;”李四数学”;”李四英语”;”李四物理”;”李四化学”;”李四生物”;”王五语文”;”王五数学”},MATCH函数在上述数组中查找H2&I2的值即“张三物理”,得到行号,再将其作为INDEX函数的参数在列C中找到符合条件的值80。
小结
在编写公式时,往往不是一帆风顺的,总会有这样那样不满足基本函数的情形。然而,加上一些技巧,就可以化解这样的难题。本例中,列A中有重复值,但是将列A和列B合并后的列表就没有重复值了,接着将要查找的值合并后再查找,即可得到所需结果。
最新推荐
-
Win11定位服务怎么关闭 win11关闭定位服务
Win11定位服务怎么关闭?在使用win11系统的过程中,通过定位服务,用户可以获得更精准的位置信息,可以 […]
-
printspooler服务怎么开启win11 如何启动print spooler服务
printspooler服务怎么开启win11?print spooler服务是关联打印机的系统服务项,实 […]
-
win11定位服务怎么打开 win11定位服务被禁用了
win11定位服务怎么打开?在使用win11系统的过程中,通过定位服务,可以获得更精准的位置信息,可以方便 […]
-
mac磁盘分区怎么分 mac给硬盘分区
mac磁盘分区怎么分?在日常使用电脑的过程中,通过对电脑进行分区规划,可以方便用户查找储存对应的文件数据, […]
-
win7打印机服务怎么开启 开启printspooler服务的步骤
win7打印机服务怎么开启?Print Spooler是打印后台处理服务,如果此服务被禁用,任何依赖于它的 […]
-
windows7怎样设置禁止随便安装软件 win7设置禁止安装软件
windows7怎样设置禁止随便安装软件?很多用户都会在电脑上进行第三方软件应用的安装,但是也带来了不安全 […]
热门文章
Win11定位服务怎么关闭 win11关闭定位服务
2printspooler服务怎么开启win11 如何启动print spooler服务
3win11定位服务怎么打开 win11定位服务被禁用了
4mac磁盘分区怎么分 mac给硬盘分区
5win7打印机服务怎么开启 开启printspooler服务的步骤
6windows7怎样设置禁止随便安装软件 win7设置禁止安装软件
7win7如何设置局域网工作机组 win7局域网共享设置工作组
8win7如何添加自带游戏 win7自带游戏怎么恢复
9win11用户账户控制怎么取消 win11关闭uac方法
10win10怎么查看网口是百兆千兆还是千兆 电脑网口是百兆还是千兆
随机推荐
专题工具排名 更多+