网站首页 > 开源技术 正文
前面跟大家分享了Excel中多条件查询的20种方法,但是当我们查找的结果区域是不确定的时候怎么办?比如我们人事部汇总好的员工工资表,想要查询某个月的工资;因为每个人做表的习惯不同,导致的考试成绩科目不一致,想要查询任意一科成绩……今天就说一下这些常用的解决方法:
一、最简单常规用法:辅助列+Vlookup+match函数
相信有点函数基础的朋友都是从这个函数学起的,因为它比较入门而且实用性也非常强!即使不好查询的情况我们也要构造出环境让vlookup函数来实现,因此当用于多个条件来查询的时候我们是实用最简单的添加辅助列来查询
比如我需要查找二班王洪涛的数学成绩:
- 首先在a35中添加辅助列=B35&C35下拉公式即可
- 在K35中输入公式=VLOOKUP(H35&I35,$A$35:$F$52,MATCH(J35,$34:$34,0),0)
根据前几天的分析改函数的语法结构相信你应该清楚了,唯一不同的是这里的表是二维表,因为我们查询的科目位置是变化的,所以需要使用一个match函数来确定科目的位置
方法二:LOOKUP+offset函数查找的固定套路:
Lookup函数用法之一,向量形式=lookup(查找值,条件区域,结果区域)
数组形式=lookup(查找值,结果区域)
公式解释:
方法三:index+match函数经典组合
函数语法=index(结果区域,行号,列号)
在K88中输入数组公式=INDEX($D$88:$F$105,MATCH(H88&I88,$B$88:$B$105&$C$88:$C$105,0),MATCH(J88,$D$87:$F$87,0))
第一个match确定班级+姓名整体在b的位置为行号,第二个match确定科目在首行的位置为列号
方法四:纵向查找hlookup+match数组公式
与vlookup函数查找区别就是纵向查找,第三参数返回的行数
在K114中输入数组公式=HLOOKUP(J114,$D$113:$F$131,MATCH(H114&I114,$B$113:$B$131&C113:C131,0),0)
与前面查找函数不同的是hlookup函数查找值是科目
公式解释:
查找值是:科目数学(可以根据下拉菜单选择任意一科)
查找区域是:$D$113:$F$131,是以查找值为首的整个区域
返回行数是:match确定班级+姓名作为整体在b113:c131区域的位置
第四参数:0为精确查找查找
方法五:offset+match数组公式或indirect+address+match数组公式
- 在K140中输入数组公式=OFFSET($B$139,MATCH(H140&I140,$B$140:$B$157&$C$140:$C$157,0),MATCH(J140,$C$139:$F$139,0))
- 在K167中输入数组公式=INDIRECT(ADDRESS(MATCH(H167&I167,$B$167:$B$184&$C$167:$C$184,0)+166,MATCH(J167,$166:$166,0)))
那么以上都是可以归为一类:都使用了查找引用函数嵌套match函数定位,当你理解了每一项整个公式就变得更加简单了!
六、sum家族函数
用好一个函数就要知道它适用哪些条件,当没有重复记录求和函数就变为查找引用函数:
当SUMPRODUCT函数用于求和=SUMPRODUCT((条件1)*(条件2)*……*(条件n))*结果区域)
- 万能sumproduct函数
在K194中输入公式=SUMPRODUCT(($B$194:$B$211=H194)*(C194:C211=I194)*($D$193:$F$193=J194)*$D$194:$F$211)
- sum数组函数
在K219中输入数组公式=SUM(($B$218:$B$235=H218)*($C$218:$C$235=I218)*($D$217:$F$217=J218)*($D$218:$F$235))
方法七:最大/小函数也可以查找
该类函数的使用也是有限制条件的,如同sum函数的原理一样,当有重复记录就会返回最大值或者最小值!
- 最大函数在K243中输入数组公式=MAX(($B$243:$B$260=H243)*(C243:C260=I243)*(D242:F242=J243)*(D243:F260))
- 最小函数在K267中输入数组公式=MIN(IF((B267:B284=H267)*(C267:C284=I267)*(D266:F266=J267),($D$267:$F$284)))
关于多条件查询返回单列查询:20种方法你会几个
至此对于多条件查找返回列数不确定的用法大致就总结这么多,涉及到了excel中基本常用的所有查找引用函数,但不限于还有其他更适合的方法!无论使用哪种方法,只要是适合自己的或者能够解决实际问题的都是好函数!通过这两期的函数用法介绍,你对Excel中查找引用函数是不是有了更深的理解?如果你还有更加简单的方法欢迎在评论区留言互相学习交流一下!
猜你喜欢
- 2024-10-31 Excel填充字母不会?学学这招吧(excel快速填充字母)
- 2024-10-31 vlookup函数傻瓜式的入门教程,每个人都可以学会
- 2024-10-31 共享数据资源,VBA代码导入已有文本数据文件的方法
- 2024-10-31 Excel中的换行符,这几种用法你会哪些?
- 2024-10-31 一文教你在Excel中利用VBA实现类似「邮件合并」的功能!
- 2024-10-31 【Excel】报表里,如何设置仅保留2位小数的万元自定义格式
- 2024-10-31 Xlookup真好用,同时查找多行多列,这个解决方法也太简单了!
- 2024-10-31 Excel问答:如何将分数转化为字母等级或中文等第(CHAR,MID,INT)
- 2024-10-31 Excel实用功能应用,多方式多条件实现数据查询,VBA代码详解
- 2024-10-31 vlookup查找数据,无法区分字母大小写咋办?这3种方法都能搞定
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- jdk (81)
- putty (66)
- rufus (78)
- 内网穿透 (89)
- okhttp (70)
- powertoys (74)
- windowsterminal (81)
- netcat (65)
- ghostscript (65)
- veracrypt (65)
- asp.netcore (70)
- wrk (67)
- aspose.words (80)
- itk (80)
- ajaxfileupload.js (66)
- sqlhelper (67)
- express.js (67)
- phpmailer (67)
- xjar (70)
- redisclient (78)
- wakeonlan (66)
- tinygo (85)
- startbbs (72)
- webftp (82)
- vsvim (79)
本文暂时没有评论,来添加一个吧(●'◡'●)