CountIF超出标准范围

时间:2012-07-10 12:09:24

标签: excel pivot-table

我有以下数据列:

Pool Amount|Calculated Payment| 10% | 15% | 20% | 30% | 40% | 50%

池金额和计算付款是静态货币字段,百分比字段都包含此公式的变体:

e.g。 C2 =IF(B2<(A2*0.9),A2*0.9,IF(B2>(A2*1.1),A2*1.1,B2))

公式将计算的付款限制在由与池金额相关的相关百分比确定的阈值上。我想要做的是每个%字段的计数显示最小和最大的数字。

对于10%字段中的一个单元格,我会使用:

最低=COUNTIF(C2,A2*0.9)和最高=COUNTIF(C2,A2*1.1)

然后我可以生成两列0和1以及SUM它们但它看起来有点笨重。我可以使用以下公式的变体:

=COUNTIF(C2:C1162, A2:A1162*0.9)显示一个单元格中的总计数?

对于具有自定义功能的数据透视表,这可能是一项工作吗?

2 个答案:

答案 0 :(得分:1)

我相信你可以通过array formula完成你想要的任务。您的“最小10%单元格”的公式应该是正确的,只需在输入公式时按 CTRL + SHIFT + ENTER 数组公式。

我认为你需要在数组公式中使用SUM而不是COUNTIF(将所有TRUE和1和FALSE相加为0)。我用了一段时间已经有一段时间了。

答案 1 :(得分:1)

COUNTIF不能用于比较一个范围/数组的每个元素与另一个元素的每个元素,但是你可以使用SUMPRODUCT来做到这一点并避免需要“数组输入”的公式,即这个公式来计算10%字段

=SUMPRODUCT((B2:B1162< A2:A1162*0.9)+0)

和Maxs

=SUMPRODUCT((B2:B1162> A2:A1162*1.1)+0)

这些公式只使用原始公式中的条件应用于范围而不是单个单元格。可以使用SUM代替SUMPRODUCT但是你需要 CTRL + SHIFT + ENTER