【SUBTOTAL函数】和【OFFSET函数】动态求最值

文摘   教育   2024-10-24 20:00   上海  



欢迎转发和点一下“看”,文末留言互动!

置顶公众号或设为星标及时接收更新不迷路



OFFSET函数的偏移量除了常量外,还可以是公式生成的数组,从而形成三维引用,最终实现动态统计需求。



01

筛选条件下的一对多应用


我们仍以上篇中的例子为例来演示具体过程。



在单元格B12中输入下列公式,三键确认即可。

=MAX(SUBTOTAL(1,OFFSET($B$1,ROW($1:$6),0,1,6)))

思路:

  • 要求出最大的平均销售量,首先要求出平均值的最大值。因此首先要用SUBTOTAL函数取得所有产品的平均销售量,再用MAX函数取得结果

  • OFFSET函数的偏移量由ROW函数生成的数组{1;2;3;4;5;6}决定

  • SUBTOTAL函数对OFFSET函数返回的三维引用进行分类计算,分别求出每一种产品的平均销售量

  • 最后由MAX函数取得最大值


这里SUBTOTAL函数的语法结构是:

SUBTOTAL(function_number, value1,value1...)

其中function_number包含11个数字,1表示求平均值



02

SUBTOTAL函数支持三维引用


看到这里可能有的朋友会问了,为什么不能使用AVERAGE函数,将公式写成“=MAX(AVERAGE(OFFSET($B$1,ROW($1:$6),0,1,6)))”?


原因就在于:这里OFFSET函数产生了多维引用。SUBTOTAL函数支持函数返回的三维引用。故能返回正确结果;AVERAGE函数不支持函数返回的三维引用,故不能使用。


有关更多SUBTOTAL函数的内容,请参看帖子听说正在评比万能函数,SUBTOTAL函数800里加急正在赶来




-END-


长按下方二维码关注EXCEL应用之家

面对EXCEL操作问题时不再迷茫无助



我就知道你“在看”

推荐阅读

Excel应用之家
介绍、交流EXCEL各项功能在工作中的实际应用; 为你答疑解惑;分享各类图表、表格和模板;提供有偿代工服务。
 最新文章