将 Countif 添加到 Excel 中的数组公式(小计)

Add Countif to Array Formula (Subtotal) in Excel

我是数组公式的新手,注意到虽然 SUBTOTAL 包含许多函数,但它不包含 COUNTIF(只有 COUNTCOUNTA)。

我想弄清楚如何将类似 COUNTIF 的功能集成到我的数组公式中。

我有一个矩阵,其中的一小部分如下所示:

A   B   C   D   E
48  53  46  64  66
48      66  89
40  38  42  49  44

37  33  35  39  41

感谢@Tom Shape 的帮助,我(他)能够对矩阵中每一行的总和进行平均,前提是它有完整的数据(所以上面例子中的第2行和第4行不会是包括)。

现在我想计算 具有完整数据的行数(因此第 2 行和第 4 行将被忽略) 其中至少包含一个高于给定阈值的值(比如45).

在当前示例中,结果为 2,因为第 1 行有 5/5 个值 > 45,第 3 行有 1 个值 > 45。第 5 行的值 < 45,第 2 行和第 3 行有部分或分别完全缺失数据。

我最近发现了 SUMPRODUCT 函数并认为 SUMPRODUCT(--(A1:E1 >= 45 可能会有用,但我不确定如何将它集成到 中,例如,

=AVERAGE(IF(SUBTOTAL(2,OFFSET(A1,ROW(A1:A5)-ROW(A1),0,1,COLUMNS(A1:E1)))=COLUMNS(A1:E1),SUBTOTAL(9,OFFSET(A1,ROW(A1:A5)-ROW(A1),0,1,COLUMNS(A1:E1))),""))

记住,我不再寻找平均值:我想过滤行是否有完整数据,如果有,我想计算至少有 1 个条目 > 45 的行.

尝试以下操作。输入数组公式。

=COUNT(IF(SUBTOTAL(4,OFFSET(A1,ROW(A1:A5)-ROW(A1),0,1,COLUMNS(A1:E1)))>45,IF(SUBTOTAL(2,OFFSET(A1,ROW(A1:A5)-ROW(A1),0,1,COLUMNS(A1:E1)))=COLUMNS(A1:E1),SUBTOTAL(9,OFFSET(A1,ROW(A1:A5)-ROW(A1),0,1,COLUMNS(A1:E1))))))

数据