簡體   English   中英

在EXCEL中使用多個表的條件SUM

[英]Conditional SUM using multiple tables in EXCEL

我有一個表,我試圖根據兩個參考表的值填充。

我有各種不同的項目'Type 1','Type 2'等,每個項目運行4個月,費用不同,取決於它們的生命周期。 這些成本計算如Ref Table 1所示。

參考表1

Month    |  a  |  b  |  c  |  d
---------------------------------
Type 1   |  1  |  2  |  3  |  4
Type 2   |  10 | 20  |  30 |  40
Type 3   | 100 | 200 | 300 | 400

Ref Table 2顯示了我未來3個月的項目進度Ref Table 2 從1月開始有2個新的,一個是Type 1 ,另一個是Type 2 在2月,我將有4個項目,前兩個進入他們的第二個月,兩個新項目開始,但這次是1型和3型。

參考表2

Date    | Jan | Feb | Mar
--------------------------
Type 1  |  a  |  b  |  c
Type 1  |     |  a  |  b
Type 2  |  a  |  b  |  c
Type 2  |     |     |  a
Type 3  |     |  a  |  b

我想創建一個表來計算每個項目類型每個月花費的總成本。 示例結果顯示在Results表中。

結果

Date    | Jan | Feb | Mar
-------------------------------
Type 1  |  1  |  3  |  5
Type 2  |  10 |  20 |  40
Type 3  |  0  | 100 | 200

我嘗試使用數組公式:

Res!b2 = {sum(if((Res!A2 = Ref2!A2:A6) * (Res!A2 = Ref1!A2:A4) * (Ref2!B2:D6 = Ref1!B1:D1), Ref!B2:E4))}

然而它不起作用,我相信這是因為第三個條件試圖將矢量與另一個矢量而不是單個值進行比較。

有誰知道我怎么能這樣做? 很高興使用數組,索引,匹配,向量,查找但不是VBA。

謝謝

假設結果表標題中的月份與Ref表2的順序相同(根據您的示例),請在Res!B2中嘗試此公式

=SUM(SUMIF(Ref1!$B$1:$E$1,IF(Ref2!$A$2:$A$6=Res!$A2,Ref2!B$2:B$6),INDEX(Ref1!$B$2:$E$4,MATCH(Res!$A2,Ref1!$A$2:$A$4,0),0)))

CTRL+SHIFT+ENTER並向下復制

這給了我與結果表中相同的結果

如果月份可能是不同的順序,那么你可以添加一些東西來檢查它 - 我假設結果表行標簽中的類型可能與Ref表1的順序不同,但如果它們總是在相同的順序中(根據您的示例),最后的INDEX/MATCH部分可以簡化為單個范圍

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM