计算每个唯一/不同的值
我有一个非常大的数据集,我需要处理和在我的计算三栏感兴趣。 我们称之为不同的列[A],[B]和[C]。 在[A]中,我有一个不同公司名称的列表,每个公司名称可能会出现几次。 我已经为数据创build了一个表格,并按字母顺序排列了公司名称。 假设我在A2:A5中有公司名称X,并且需要完成的计算是SUMPRODUCT(B2:B5; C2:C5)/ SUM(C2:C5)。 我如何计算每一个独特/独特的公司名称,并以一个很好的方式呈现结果?
例如在D2中,在新列D中使用以下公式:
=IF(A2<>A1,SUMPRODUCT(--($A$2:$A$10=A2)*$B$2:$B$10*$C$2:$C$10)/SUMIF($A$2:$A$10,A2,$C$2:$C$10),"")
并且只要A中的值改变,它就会写下结果
将A2:A10,B2:B10和C2:C10更改为对应您的最后一行,并将固定引用保留为$
为了对应你的设置,我写了“;” 在下面的:
=IF(A2<>A1;SUMPRODUCT(--($A$2:$A$10=A2)*$B$2:$B$10*$C$2:$C$10)/SUMIF($A$2:$A$10;A2;$C$2:$C$10);"")
把两个INDEX函数放在一起:
a :
范围。
=IF(A2<>A3, SUMPRODUCT(INDEX(B:B, MATCH(A2, A:A, 0)):INDEX(B:B, MATCH(A2&"z", A:A)), INDEX(C:C, MATCH(A2, A:A, 0)):INDEX(C:C, MATCH(A2&"z", A:A)))/SUMIFS(C:C, A:A, A2), TEXT(,))
首先发现,
INDEX(B:B, MATCH(A2, A:A, 0))
find最后一次(在sorting数据上)
INDEX(B:B, MATCH(A2&"z", A:A))
请注意,我将您的SUM更改为SUMIFS,使生活变得更简单。