2017-10-07 64 views
1

我找不到這個問題,雖然它似乎與此類似:Conditional SUM using multiple tables in EXCEL除了行不總是有表中的序列相同。Excel:根據條件或來自另一個表的分組總結表的值

我的結果表(RES)應根據組表(A,B,C)以及值表填寫。

我分組幾個產品分爲組A,B,C根據 組表:

Products | Group 
------------------------ 
P1   | A 
P2   | A 
P3   | B 
P4   | B 
P5   | A 
P6   | C 

對於幾個週期我有這些產品在不同的表中生成的值。這些表具有相同的列的結構,例如:

Value Table Period 1  # Value Table Period 2  
Products | Value   # Products | Value 
------------------------ # ------------------------ 
P3   | 40   # P2   | 60 
P5   | 10   # P5   | 20 
P2   | 60   # P1   | 10 
P6   | 50   # P3   | 30 
P1   | 20   # P6   | 40 
P4   | 30   # P4   | 50 

這些值我試圖合併成一個結果表,這將根據相應週期內他們的羣組總結不同的產品,方法如下:

Result | Period 1 | Period 2 
----------------------------------- 
A  | 90  | 90 
B  | 70  | 80 
C  | 50  | 40 

我試圖應用另一篇文章的數組概念,但我沒有成功地將它調整到我的表格,這些表格在某些結構方面有所不同。如果我能避免使用VBA,我會很高興。

非常感謝!

回答

0

經過一番更多的努力我找到了正確的數組公式,應該被放入結果表的單元格B2:

用CTRL + SHIFT
=SUM(SUMIF(Period1!$A$2:$A$7;IF(Result!$I$17:$I$22=Result!$A2;Result!$H$17:$H$22);Period1!$B$2:$B$7)) 

確認+ Enter抄下和跨越。

我希望這可以幫助你,太;-)

0

這裏的另一種方式......

=SUM(IF(ISNUMBER(MATCH(Period1!$A$2:$A$7,IF(Result!$I$17:$I$22=Result!$A2,Result!$H$17:$H$22),0)),Period1!$B$2:$B$7)) 

使用分號作爲分隔符...

=SUM(IF(ISNUMBER(MATCH(Period1!$A$2:$A$7;IF(Result!$I$17:$I$22=Result!$A2;Result!$H$17:$H$22);0));Period1!$B$2:$B$7)) 

請注意,該公式需要使用CONTROL+SHIFT+ENTER進行確認。

相關問題