查询专题 | 多年学习汇于此篇,纪念那些年忘我的学习!

查询和聚合统计是一般工作中最常遇到的需求,本文将为大家整理常见的需求,各种解法!都学会,查询将随心所欲,不再是个问题!
提示:普通公式直接回车,数组公式:Ctrl+Shift+Enter录入
案例1 | 首次记录-张三第一次销售金额
普通公式:
=VLOOKUP(A17,B1:G12,COLUMNS(B1:G12),)
VLOOKUP再熟悉不过,不过多解释,以上公式和=VLOOKUP(A17,B1:G12,6,) 效果完全一样!使用COLUMNS($B$1:$G$12) 有什么好处,简单,不过多少列,都自动获取到,不用一个一个数!
扩展学习推荐->COLUMNS超详细用法
更多解法公式:首次查询方法合集(超多超详细)
案例2 | 最后一次-张三最后一次销售金额
数组公式(VLOOKUP死忠粉选择):
=VLOOKUP(1,IF({1,0},0/($B$2:$B$12=A17),$G$2:$G$12),2)
这里第四参数为省略默认TRUE,近似查找,遵循“二分法”查找原理,同LOOKUP乱序查找,只是这里需要构建条件和结果两列!
扩展学习:VLOOKUP反向查找中的IF({1,0}是什么意思?
普通公式(推荐):LOOKUP更简单一些
=LOOKUP(1,0/($B$2:$B$12=A17),$G$2:$G$12)
扩展学习:进阶用LOOKUP
案例3 | 任意第几次查找-张三的第三次销售金额
数组公式:
=INDEX(G:G,SMALL(IF($B$2:$B$12=$A17,ROW($B$2:$B$12)),3))
第几次出现的控制在公式中的3,如果要查询第四次把3修改为4即可!
案例4 | 一对多-张三的全部销售记录金额
数组公式:
=IFERROR(INDEX(G:G,SMALL(IF($B$2:$B$12=$A$17,ROW($B$2:$B$12)),ROW(A1)))&"","")
第一个&"",是为了避免销售金额是空,查询结果显示为0,第二个""是把错误值显示为空,是IFERROR函数的第二参数!
扩展学习:最强查询组合INDEX+MATCH
案例5 | 多条件查询-首次记录
数组公式:
=VLOOKUP(A17&"|"&B17,CHOOSE({1,2},$B$2:$B$12&"|"&$D$2:$D$12,$G$2:$G$12),2,0)
CHOOSE 的作用同IF({1,0}),详细看案例2中的扩展学习,这里的 "|" 主要是为了容错,避免类型类似如下的情况 姓名:张火, 名称:火龙果,和 姓名:张火火, 名称:龙果,本质二者不一样,不加分隔符组合后就是一样的!
案例6 | 多条件查询-最后一次记录
普通公式:
=LOOKUP(1,0/($B$2:$B$12=A17)/($D$2:$D$12=B17),$G$2:$G$12)
使用较为频繁,也是推荐的方法!
案例7 | 多个最值记录返回-返回张三销售最高的记录(最后一条)
数组公式:难度较大
=INDEX($A$1:$G$12,RIGHT(MAX(IF($B$2:$B$12="张三",ROW($B$2:$B$12)+$G$2:$G$12/1%%%)),3),COLUMN(C1))
公式看上去难度较大,数组入门后看懂问题不大,主要是利用“权重”,如果一个数在一组数中最大,那么这组数同时扩大N倍,最大数还是原来那个,不会改变!利用这点觉得类似的问题,也就是常见的思路-权重!
金额/1%%%+行号 ,这样金额是主权重,扩大1000000,加上行号,可以区别金额相同的问题,最后一次也就是金额相同就看行号,最大的那个,MAX即可,本案例中MAX结果(499500009,最后使用RIGHT截取行号(3位)即可,如果金额较大,可以多扩大一些,确保最后截取不会截取到金额
根据查询条件返回多列的,参考这里的INDEX第三参数COLUMN,不再另举例
扩展学习:简单谈谈不简单的ROW和COLUMN两兄弟!
最小值同理,不再啰嗦!
案例8 | 反向查询
普通公式:
=INDEX($C$2:$C$12,MATCH(A17,$D$2:$D$12,))
反向查询方法合同,这里推荐INDEX+MATCH组合,比较简单!
VLOOKUP反向查询视频教程:VLOOKUP反向查询原理详解
案例9 | 合并单元格查询
普通公式:
=LOOKUP("座",OFFSET($A$2,,,MATCH($A$17,$B$2:$B$12,)))
关于“座”用法详解:公式中特殊符号详解
案例10 | 多层合并单元格
普通公式(非365三键录入):
=COUNTA(INDEX($C$1:$C$13,LOOKUP(1,0/(LOOKUP(ROW($2:$13),IF($B$2:$B$13<>"",ROW($2:$13)),$B$2:$B$13)="A公司"),ROW($2:$13))):INDEX($C$1:$C$13,MATCH("华北区域",$A$1:$A$13,)))
过于复杂,函数骨灰级粉可以研究一下,其他人员不推荐深入!
不过其中包括两个有价值的知识点:
1、INDEX结果是一个引用(可以和单元格或者INDEX直接连接)
2、LOOKUP(ROW(区域),IF(区域<>"",ROW(区域)),区域) 基本是通用的做法,可以把合并单元格在内存中填充(合并单元格使用首个填充),类似于辅助列定位-空值-使用上一个单元格填充!
能想到的,都给大家汇总于此,这也算是对我自己所学知识的一次小小总结吧!
大部分涉及到的基础知识已给出相关的文章链接,有不懂的可以看扩展链接,say 88~~
(0)

相关推荐

  • 如何提取出最后一个斜杠(\)之前的内容?

    你好,我是刘卓.欢迎来到我的公号,excel函数解析.今天要分享的内容是如何提取出最后一个斜杠之前的内容,这类型的题很多小伙伴也会经常遇到. 下图A列是一些包含路径的文件名,现在要提取出最后一个斜杠前 ...

  • 多区域多区间查找等级,还得是LOOKUP!

    如下图所示,要根据右表不同地区等级的业绩区间查找相应的业绩等级,结果放在C列.业绩区间是左开右闭的,如(0,2000],也就是大于0且小于等于2000. 例如第5行的记录:地区等级是"A级& ...

  • 你连0都不懂,老板知道吗?

    最近有好几个学员,公式看起来好像都对,但是实际上结果都出问题.跟着卢子来看看这几个问题,你能否也想到原因? 1.用LOOKUP的经典查找模式填充内容,含有0的没办法转换成上一个单元格的内容. 0跟空单 ...

  • VLOOKUP函数不能查找最后一个值,怎么办?

    VLOOKUP函数是使用最多的Excel函数之一,能够查找到第一个值并返回对应的值,然而,如果查找的项有多个,如何查找到最后一个值呢? 举个例子,如下图1所示的数据,要查找"员工15&quo ...

  • 学习七一讲话精神专题研讨发言(精选三篇)

    学习七一讲话精神专题研讨发言(精选三篇)

  • 《学习言志诗词集86篇》檐流未滴梅花冻,一种清孤不等闲

    读书要三到 [宋代] 朱熹 凡读书......须要读得字字响亮,不可误一字,不可少一字,不可多一字,不可倒一字,不可牵强暗记,只是要多诵数遍,自然上口,久远不忘.古人云,"读书百遍,其义自见 ...

  • 培养学生良好的学习习惯心得五篇

    习惯是非常重要的.我国著名的教育家叶圣陶先生曾深刻指出:什么是教育,简单一句话,就是要养成良好的习惯.习惯和兴趣一样,都是最好的老师.下面是小编带来的五篇培养学生良好的学习习惯心得,希望大家喜欢! 培 ...

  • 查询专题

    查询和聚合统计是一般工作中最常遇到的需求,本文将为大家整理常见的需求,各种解法!都学会,查询将随心所欲,不再是个问题! 提示:普通公式直接回车,数组公式:Ctrl+Shift+Enter录入 案例1 ...

  • 初中生学习习惯—做作业篇

    做作业是同学们的日常任务,每天通过做作业可以检测下当天所学,从而来调整学习进度和难度.做作业也有很多技巧,科学有效的方法可以帮助同学们快速的掌握知识. (一)做作业的步骤 作业要"思,问,集 ...

  • 100篇材料人超全实用学习资料包|招商、投资、行研必备

    新材料作为高端装备.节能环保.信息技术.新能源等战略新兴产业的基石与先导,对推动技术创新.促进传统产业转型升级和国家安全等具有支撑和保障的作用. "十四五规划"更是指出:大力发展战 ...

  • 多年没碰英语的你,该如何重新开始学习?

    昨天,在机场候机的当儿,朋友聊起,2018年,准备将毕业后就再也没碰过的英语捡起来,但却苦于不知如何入手,因为语法啊.单词啊,基本都退还给老师了. 她的苦恼,并非个例. 很多朋友毕业后,由于工作用英语 ...

  • 第一篇(君子于役)泛读文章学习笔记

    出自<诗径:王风>此辞是一首思妇之辞 2.君子于役,不知其期.曷至哉?鸡栖于埘,日之夕矣,牛羊下来.君子于役,如之何勿思? 释:丈夫前往边地服差役,不知道归来的日期.要何时才能回到家?鸡已 ...

  • 新人必读:快速掌握Pi network中的知识,为布道而学习!(收藏篇)

    三剑客社区 41篇原创内容 Official Account 中文如下: 免责声明#1: Pi目前仍然是BETA版本 Pi Network目前仍然是BETA版本.该项目正在进行中,这意味着会存在漏洞, ...