220 多个excel快捷键速查表,适用Windows和Mac。工作效率提高10倍。免费下载>>>
下载 “excel快捷键速查表” Excel快捷键速查表.zip – 已下载54次 – 3 MB
通用公式
要仅使用条件计算可见行,您可以使用基于SUMPRODUCT、SUBTOTAL和OFFSET的相当复杂的公式。在所示示例中,C12 中的公式为:
前言
SUBTOTAL 函数可以轻松生成隐藏行和非隐藏行的总和和计数。但是,在没有帮助的情况下,它无法处理COUNTIF或SUMIF等标准。一种解决方案是使用 SUMPRODUCT 来应用 SUBTOTAL 函数(通过 OFFSET)和标准。这种方法的细节如下所述。
这个公式的核心是在 SUMPRODUCT 中设置两个数组。第一个数组应用条件,第二个数组处理可见性:
该标准适用于部分公式:
这会生成一个这样的数组:
其中 TRUE 表示“符合标准”。请注意,因为我们在这个数组上使用了乘法 (*),所以 TRUE FALSE 值将通过数学运算自动转换为 1 和 0,所以我们最终得到:
使用 SUBTOTAL 应用可见性过滤器,函数编号为 103。
SUBTOTAL 能够在运行计算时排除隐藏行,因此我们可以在这种情况下使用它来生成“过滤器”以排除 SUMPRODUCT 中的隐藏行。但问题是 SUBTOTAL 返回一个数字,而我们需要一个结果数组才能在 SUMPRODUCT 中成功使用它。诀窍是使用 OFFSET 为 SUBTOTAL 每行提供一个引用,这样 OFFSET 将每行返回一个结果。
当然,这需要另一个技巧,即给 OFFSET 一个数组,其中每行包含一个数字,从零开始。我们使用构建在 ROW 函数上的表达式来做到这一点:
这将生成一个这样的数组:
总之,第二个数组(使用 SUBTOTAL 处理可见性)是这样生成的:
=SUBTOTAL(103,OFFSET(C5,ROW(C5:C8)–MIN(ROW(C5:C8)),0))
=SUBTOTAL(103,OFFSET(C5,{0;1;2;3},0))
=SUBTOTAL(103,{“East”;“West”;“Midwest”;“West”})
={1;0;1;1}
最后,我们有:
返回 1。
多个标准
您可以扩展公式以处理多个条件,如下所示:
汇总结果
要返回值的总和而不是计数,您可以调整公式以包含总和范围:
标准和可见性数组的工作方式与上面解释的相同,不包括不可见的单元格。如果您需要部分匹配,您可以使用 ISNUMBER + SEARCH 构造一个表达式
220 多个excel快捷键速查表,适用Windows和Mac。工作效率提高10倍。免费下载>>>