前一篇文章:Excel-常用指令SUMPRODUCT函數,接著來看看 SUMIF 函數的使用。
語法:SUMIF(判斷的儲存格範圍,判斷準則(條件), 計算的儲存格範圍)
參考下圖,如果要計算超過3000者的數量加總。
利用 SUMIF 函數,公式:=SUMIF(B3:B10,">3000")
其中,
(1) 判斷的儲存格範圍:B3:B10
(2) 判斷準則(條件):">3000",判斷式要以「"」含括。
(3) 計算的儲存格範圍:此例和「判斷的儲存格範圍」相同,所以可省略。
如果你使用陣列公式來處理,則:
公式:=SUM(IF(B3:B10>3000,B3:B10,0))
輸入完成,要按 Ctrl+Shift+Enter 鍵,Excel 會自動加上「{}」。
如果是要使用 SUMPRODUCT 函數也行。
公式:=SUMPRODUCT((B3:B10>3000)*B3:B10)
條件:B3:B10>3000,會傳回 TRUE/FALSE 陣列。
公式中的「*」在運算時會將 TRUE/FALSE 陣列轉換為 1/0 陣列,再和儲存格範圍B3:B10相乘,最後再加總。
關於 SUMPRODUCT 函數可以參考:Excel-常用指令SUMPRODUCT函數
以下例子是以計算的儲存格範圍和「判斷的儲存格範圍」不相同。
公式:=SUMIF(A3:A10,"OK",B3:B10)
使用儲存格範圍A3:A10來判斷是否內容為「OK」,再取出儲存格B3:B10中對應的儲存格來加總。
或是像下圖中的範例,計算「冬」的數量,做法也是一樣。
也可以在公式中給予模糊化的條件,例如下圖中,要計算姓氏為「黃」者予以數量加總。
所以在公式中使用條件「黃*」,即可挑出姓名第一個字為「黃」者的數量來加總。
如果你要使用多個條件來加總,則每個條件都必須符合者(AND),才予以數量加總。請改用 SUMIFS 函數。
語法:SUMIFS(加總儲存格範圍,儲存格範圍1,條件1,儲存格範圍2,條件2, ...)
下圖中要計算「季節=秋」且「人員=乙」,兩個條件都符合者的數量加總。
公式:=SUMIFS(C3:C14,A3:A14,"秋",B3:B14,"乙")
第5列只有一個條件符合,不列入加總。第9,13列都有二個條件相符,全部併入加總。
如果改用 SUMPRODUCT 函數來求解,
公式:=SUMPRODUCT((A3:A14="秋")*(B3:B14="乙")*C3:C14)
選取儲存格A2:C14,按 Ctrl+Shift+F3 鍵,勾選「頂端列」,定義名稱:季節、人員、數量。
則公式改為:=SUMPRODUCT((季節="秋")*(人員="乙")*數量)
以先前 SUMPRODUCT 函數的範例:可以參考:Excel-常用指令SUMPRODUCT函數
改為要以 SUMIFS 函數來求解,在本例中因為是要算次數,所以要加上輔助欄位,萁中的內容都是「1」。
如果選取儲存格A1:E21,按 Ctrl+Shift+F3 鍵,勾選「頂端列」,定義名稱:性別、年級、項目、結果、輔助。
(1) 儲存格G2:=SUMIFS(輔助,性別,H$1,年級,$G2)
(2) 儲存格G6:=SUMIFS(輔助,項目,H$5,年級,$G6)
(3) 儲存格G10:=SUMIFS(輔助,結果,H$9,年級,$G10)
(4) 儲存格G14:=SUMIFS(輔助,項目,H$13,性別,$G14)
(5) 儲存格G18:=SUMIFS(輔助,項目,H$16,結果,$G18)
(6) 儲存格G21:=SUMIFS(輔助,結果,H$19,性別,$G15)
【延伸閱讀】
* Excel-依指定的欄位計算多列的小計(INDIRECT,SUMIF,OFFSET)
* Excel-加總同一日期的多個項目(SUMPRODUCT,SUMIF)
* Excel-互通陣列公式、SUM+IF、SUMIF、SUMIFS、SUMPRODUCT
* Excel-依指定的欄位計算多列的小計(INDIRECT,SUMIF,OFFSET)
* Excel-使用SUMPRODUCT函數執行陣列資料運算
留言列表