Excel:总和仅重复一次值并且仅在可见单元格上

时间:2019-05-26 13:49:17

标签: excel excel-formula

给出以下已过滤表:

TYPE    NUM
A       3
A       3
A       3
B       5
B       5

我需要找到列NUM的总和而不包含重复的值。 我目前根据另一篇文章有​​以下解决方案:

=SUMPRODUCT(B2:B6/COUNTIFS(A2:A6,A2:A6))

在这种情况下,结果为8,这在没有应用过滤器时是正确的。

现在,如果我将列过滤为仅在TYPE中显示 A ,它将仍然向我显示8。我遇到的问题是,我需要根据可见量调整总和。将过滤器仅显示为 A 后,我应该得到3,如果我过滤以显示 B ,则应该只有5。我已经尝试过AGGREGATESUBTOTAL,却一无所获。

是否可以将上述公式仅调整为可见个单元格?

谢谢

2 个答案:

答案 0 :(得分:1)

因此,请尝试以下操作:

enter image description here

下拉验证选择A或B,但是您可以更改它。 公式是:

=SUMIFS(B2:B6,A2:A6,D2)/COUNTIFS(A2:A6,D2)

编辑,根据重新阅读的问题,我认为这可能更接近:

enter image description here

答案 1 :(得分:1)

因此,这是一个相当复杂的公式,涉及SUMPRODUCT()SUBTOTAL()OFFSET()。更多信息here

要根据您的情况实施此操作,您将获得:

=SUMPRODUCT((B2:B6/COUNTIFS(A2:A6,A2:A6))*(SUBTOTAL(3,OFFSET(B2,ROW(B2:B6)-MIN(ROW(B2:B6)),0))))

另一个选择是(在您的情况下,如果每个条件的值都相同)

=SUMPRODUCT((A2:A6<>A3:A7)*(B2:B6)*(SUBTOTAL(3,OFFSET(B2,ROW(B2:B6)-MIN(ROW(B2:B6)),0))))

enter image description here

在我的示例中,我将同时过滤掉A和B

enter image description here

用于动态范围的公式如下:

=SUMPRODUCT((B2:INDEX(B:B,COUNTA(B:B))/COUNTIFS(A2:INDEX(A:A,COUNTA(A:A)),A2:INDEX(A:A,COUNTA(A:A))))*(SUBTOTAL(3,OFFSET(B2,ROW(B2:INDEX(B:B,COUNTA(B:B)))-MIN(ROW(B2:INDEX(B:B,COUNTA(B:B)))),0))))