我在网上找到了一个Excel公式,该公式可以提供所需的结果,但我不完全了解它的工作原理。对于以下数据,这是=SUMPRODUCT(B1:B9/COUNTIF(A1:A9,A1:A9))
,结果是129
(它在数据的列B
中添加了一次出现,这是必需的结果13 + 24 + 92 = 129
)。
Row A B
1 1 13
2 1 13
3 1 13
4 1 13
5 3 24
6 3 24
7 3 24
8 12 92
9 12 92
我知道COUNTIF(A1:A9,A1:A9)
正在创建数组{4;4;4;4;3;3;3;2;2)
,但是我不知道范围B1:B9
分子如何创建结果。如果分子是数字“ 1”(即公式改为=SUMPRODUCT(1/COUNTIF(A1:A9,A1:A9))
,则结果为3
,我认为是1/4 + 1/4 + 1/4 + 1/4 + 1/3 + 1/3 + 1/3 + 1/2 + 1/2
的总和。 B1:B9
在公式中是如何逐步解决的?
答案 0 :(得分:1)
您自己很接近答案。给定您的示例,您有两个数组: 第一个是B列中的数字,另一个是A列中countif的数字: {13; 13; 13; 13; 24; 24; 24; 92; 92}和{4; 4; 4; 4; 3; 3; 3; 2; 2}
在sumproduct公式中,您需要除法,因此可以将数组除以: {13/4; 13/4; 13/4; 13/4; 24/3; 24/3; 24/3; 92/2; 92/2},这些数字的总和为: 3,25 + 3,25 + 3,25 + 3,25 + 8 + 8 + 8 + 46 + 46 = 129
还有一个魔术数字:-)