excel - 考虑到过滤器,如何计算列的中位数?

标签 excel excel-formula excel-2010

我最近发现,您可以使用 SUBTOTAL 来实现各种函数,这些函数允许您对列进行求和或查找总计,即使在对其应用了过滤器的情况下也是如此。

但是,SUBTOTAL 的函数列表不包括MEDIAN

考虑到某些行已被过滤掉,是否可以找到一列数字的中位数?

最佳答案

更新以获取下面 lori_m 的评论

<强>1。原始答案 - 所有 xl 版本
Aladin Akyurek from this solution 提供 如果您的数据位于 A1:A10,则数组输入此公式 =MEDIAN(IF(SUBTOTAL(3,OFFSET(A1:A10,ROW(A1:A10))-MIN(ROW(A1:A10)),,1)),A1:A10))

<强>2。更新的答案(非数组)-所有 xl 版本 =MEDIAN(IF(SUBTOTAL(3,OFFSET(A1:A10,MMULT(ROW(A1:A10),1)-MIN(MMULT(ROW(A1:A10),1)),,1)), A1:A10))

<强>3。 Excel 2010 和 Excel 2013
=AGGREGATE(12,5,A1:A10)

关于excel - 考虑到过滤器,如何计算列的中位数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12161108/

相关文章:

excel - 在excel中反转字母

vba - Excel VBA 过滤前一天的数据透视表和数据透视图 - 数据透视过滤字段

vba - 将 VBA 宏应用于多个单元格

mysql - 如何在Excel中创建动态表格?

excel - VBA 的 Sumif 始终使用前一列的前一个单元格作为参数,直到列结束

excel - 每日总金额计算公式

excel - 调用单个单元格而不是范围

excel - 使用 VBA Selenium 从 Web 抓取日期内容时日期格式错误的问题

excel - 将规则应用于条件格式

ms-office - Excel 2010中的共享字符串