【问题标题】:SUBTOTAL 101 formula that ignores #DIV/O忽略 #DIV/O 的 SUBTOTAL 101 公式
【发布时间】:2014-02-14 19:11:32
【问题描述】:

我有一个庞大的学术出勤数据库,学生在 Excel 中被过滤到子组中。在工作簿的第一页,我有一张表格,详细说明了他们在每个班级的个人缺勤情况,以及他们在最后一列中的总体缺勤百分比。

例如,在M6(第一行过滤数据的最后一个单元格)中,我使用公式=AVERAGEIF(E6:K6,"<>#DIV/0!") 仅计算我有数据的课程的平均值。包含主题数据的单元格是直接查找来自其他工作表的COUNTIF 结果,如果不存在数据,显然会返回#DIV/0 消息。

我需要做的是获得一个SUBTOTAL 101 函数或类似的函数,它会忽略我按“组”过滤的隐藏单元格(在这种情况下,“组是教学组”)列表将忽略#DIV/0消息,这样我就可以按缺勤的“组”取平均值,并显示在表格的底部。

请帮助我编写一个公式,该公式基本上将AVERAGEIF 公式嵌套在SUBTOTAL 101 公式中(反之亦然,如果应该这样,如果可能的话)给我想要的结果。我会进行 VBA 修复,但正如您所知,我需要将其分解为小步骤,因为我的编码技能不高。

任何建议将不胜感激。

提前谢谢你。

【问题讨论】:

    标签: excel excel-formula


    【解决方案1】:

    您使用的是哪个版本的 Excel?在 Excel 2010 或更高版本中,AGGREGATE 函数的工作方式有点像SUBTOTAL,但也可以选择忽略错误,所以例如这个公式......

    =AGGREGATE(1,7,A2:A100)

    ....平均 (1) A2:A100 中的数据,同时忽略错误和隐藏行 (7)

    【讨论】:

      【解决方案2】:

      我建议您通过从工作表中删除所有除零来避免此问题。

      例如,如果:

      =AVERAGE(Z1:Z100)
      

      给出错误,使用:

      =IFERROR(AVERAGE(Z1:Z100),"")
      

      改为

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-07-24
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-12-29
        • 2011-09-02
        • 2011-08-21
        相关资源
        最近更新 更多