在 Excel 的工作表中,如果要根據二個以上條件來取出某一欄的內容加總,其條件之間是以 AND 運算來執行,可以有多種方式來達到目的。
例如使用 SUMIFS 函數、SUM+IF+陣列、SUMPRODUCT 函數等方式。
(1) SUMIFS
儲存格H3:=SUMIFS(D2:D11,B2:B11,">5",C2:C11,">3")
根據 B 欄的條件(>5) AND C 欄的條件(>3),結果為True者,相對取出 D 欄的內容來相加。
(2) SUM+IF+陣列
儲存格H4:{=SUM(IF(B2:B11>5,IF(C2:C11>3,D2:D11,0)))}
因為 IF(IF(IF…))) 巢狀結構的 IF 判斷式,其邏輯概念既為 多個條件的 AND 運算。配合陣列運算,可以取出對應的列來加總。
(3) SUMPRODUCT
儲存格H5:=SUMPRODUCT((B2:B11>5)*1,(C2:C11>3)*1,D2:D11)
使用 SUMPRODUCT 函數中的每一個判斷結果(True 或 False),在乘以1之後,其結果為1或0,因為其為相乘運算,概念上和 AND 運算一致:
(True X 1 ) X (True X 1 ) = 1 X 1 = 1 (True)
(True X 1 ) X (False X 1 ) = 1 X 0 = 0 (Fasle)
(False X 1 ) X (True X 1 ) = 0 X 1 = 0 ( Fasle)
(Fasle X 1 ) X (Fasle X 1 ) = 0 X 0 = 0 ( Fasle)
如果要將 D 欄設定格式化條件,將合於條件(AND(B欄>5, C欄>3))的 D 欄內容以紅色顯示,可以做以下的設定:
留言列表