2017-06-18 161 views
2

我有一個非常大的數據集,我需要處理,並且在我的計算中有三欄感興趣。我們稱不同的列[A],[B]和[C]。在[A]中,我有一個不同公司名稱的列表,其中每個公司名稱可能會出現多次。我創建了一個數據表並按字母順序排列公司名稱。假設我在A2:A5中有公司名稱X,並且需要完成的計算是SUMPRODUCT(B2:B5; C2:C5)/ SUM(C2:C5)。我如何計算每個獨特/獨特的公司名稱,並以良好的方式呈現結果?每個獨特/不同值的計算

回答

1

使用以下公式中的新列d例如在D2:

=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);"") 
+0

非常感謝! :) – user361695

0

將兩個INDEX函數連同:作爲範圍。

=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)) 

最後一次出現(在排序的數據)發現,

INDEX(B:B, MATCH(A2&"z", A:A)) 

enter image description here

請注意,我改變了你SUM到SUMIFS讓生活變得更輕鬆。

+0

非常感謝! :) – user361695