文章图片
文章图片
文章图片
文章图片
文章图片
从前期的学习中 , 我们已经知道 , Subtotal函数的功能非常强大 , 但还有一个函数 , 其功能强大到了没有对手 , 此函数就是Aggregate , 可以实现Sum、Average、Count、Max、Min、Proudct、Media等19个函数的功能 。 而且还可以隐藏、错误值、空值等 , 不仅如此 , 还支持常量数组 。
功能:返回数据列表或数据库的合计 。
语法结构:分为“引用形式”和“数组形式” 。
引用形式:=Aggregate(功能代码忽略代码数据区域1[数据区域2
[数据区域3
……)
数组形式:=Aggregate(功能代码忽略代码数组[索引值
) 。
参数解读:
功能代码:必需 , 介于1-19之间的整数值 , 指定要使用的汇总方式 , 也就是指定要使用的函数 。
忽略代码:必需 , 介于0-7之间的数字 , 指定在计算区域内要忽略那些类型的值 。
备注:
1、在将Aggregate函数名称及左括号输入到工作表的单元格中时 , 就会立即看到作为参数使用的所有函数的列表 , 如下图:
如果需要的函数不在列表中 , 请向下拖动滚动条 。
2、第2个参数时必须的 , 但未填写 , Aggregate函数将返回#VALUE!错误值;在输入第一个参数 , 并键入“”(逗号)之后 , 就会立即看到作为参数使用的所有代码的列表 , 如下图:
3、AGGREGATE 函数专为数据列或垂直区域设计 , 不适用于数据行或水平区域 。
案例解读
一、Aggregate函数:忽略错误值计算最大值 。
目的:计算员工的最高“月薪” 。
方法:
在目标单元格中输入公式:=AGGREGATE(46G3:G12) 。
解读:
在数据源的“月薪”列中 , G7单元格的值为错误代码#VALUE! , 所以在用Max函数计算最大值时 , 返回错误值 , 此时可以用Aggregate函数忽略错误值 , 然后计算最大值 。
二、Aggregate函数:忽略错误值并计算最大值 。
目的:计算第3名员工的“月薪” 。
方法:
在目标单元格中输入公式:=AGGREGATE(146G3:G123) 。
解读:
功能代码14代表的是Large函数 , 即返回数组中第K个最大值 , 在本示例中 , 就是返回G3:G12中的第3个最大值;忽略代码6为忽略错误值 。
三、Aggregate函数:忽略错误值并计算最大值 。
目的:计算倒数第3名员工的“月薪” 。
【3g|强大到没有对手的Aggregate函数,碾压Sum等19个函数,你真的会吗】方法:
在目标单元格中输入公式:=AGGREGATE(156G3:G123) 。
解读:
公式=AGGREGATE(156G3:G12)看起来并没有错误 , 因为语法结构中已经明确前3个参数时必须的 , 最后1个参数可以省略;但仔细分析发现 , 代码15对应的函数为Small , 即返回G3:G12中的第K个最小值 , 但公式中并没有指定K , 所以返回错误值 。
四、Aggregate函数:多个区域求和 。
目的:忽略错误值 , 并计算所有员工前半年的总“销量” 。
方法:
在目标单元格中输入公式:=AGGREGATE(96D4:I13) 。
解读:
如果多个区域不连续 , 也可以采用=AGGREGATE(96D4:D13E4:E13F4:F13G4:G13H4:H13I4:I13)方式实现 , 即独立编辑每个数据区域;除了求和之外 , 其他的函数同样适用 。
五、Aggregate函数:筛选状态下忽略错误值 。
目的:按性别计算总“月薪” 。
方法:
在目标单元格中输入公式:=AGGREGATE(97G3:G12) 。
解读:
忽略代码7的作用为:忽略隐藏
六、Aggregate函数:批量统计 。
目的:一次性查询可见区域和总区域的最大值、最小值、平均值、和值、计数、并计算中位数 。
- 三星|若想五年内不换手机,建议一步到位,目前只有这4款机型符合要求
- 高通骁龙|不到一个月,真我又开新品发布会,性价比出色预定量却很惨淡
- 软件|珍藏已久的4款压箱底实用软件,好用到你无可挑剔
- 芯片|摊牌也没用,ASML也没料到,华为新型芯片已经领先
- 华为|为什么以前买五六千手机不眨眼,现在看到三四千的手机却嫌贵了
- CPU|AMD锐龙7000处理器开始上机:电压达到1.532V
- 小米科技|目前公认可闭眼买的3款骁龙870,最低被干到1569元,可以再战3年
- vivo|2022买手机眼光要放长远,这三款一步到位,轻松用四五年
- 红米手机|红米k40S跟红米k50到底谁更香?细节对,米粉:不纠结了
- 红米手机|搭载天玑8100处理器的Redmi K50,到底好在哪?3大优势不可忽略!