[英]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.