這是「按條件算OO」系列文的第一篇教學!今天會來聊聊 SUMIF
和 SUMIFS
。
前些日子我們把「聚集函式御五家」都搜集在一起了,有 SUM
、AVERAGE
、COUNT
/ COUNTA
、MAX
和 MIN
。這些都是常見又好上手的新手函式,接下來我們要試著把它們和條件的 IF
跟 IFS
結合,讓你可以按照自己定義的條件來算總和、平均、數量、最大值與最小值喔!
簡單來說,SUMIF
跟 SUMIFS
都是用條件來篩選值、再做加總的函式,你可以看成是 SUM
跟 IF
/ IFS
的結合。比如說我們有張清單,想要算出「蘋果紅茶」的總銷量(售出數量的加總):
如果要手動算,要去 A 欄,找「蘋果紅茶」在哪、再去相對應的 C 欄位加總,有點太麻煩了吧!這時候就可以把 SUMIF
派上場,就會輕鬆得到結果囉:
比起手動一個個把「蘋果紅茶」的銷量挑出來算,這樣是不是很方便呢?如果還不太確定 SUM
、IF
、IFS
是什麼,歡迎回來這邊複習:
這次練習的試算表在這邊,歡迎複製一份來練習喔!
SUMIF
可以讓你按照定義的條件,把某範圍裡的值加總起來。
=SUMIF(搜尋條件範圍, 條件, [加總範圍])
SUMIF
就會用你指定的條件,在這個範圍搜尋符合條件的儲存格。SUMIF
加總的範圍在哪。官方文件給了一些範例:
"=文字"
、"=1"
; "文字"
、1
如果是直接指定文字的話,要記得在文字外加上一組雙引號,數字的話就不要(1
)。">1"
">=1"
"<1"
"<=1"
"<>1"
、"<>文字"
另外,如果你的條件有不確定的文字,可以搭配半形「?
」或是半形「*
」這兩個萬用字元來幫忙,做出模糊搜尋。記得:
?
」表示不確定的文字只有一個*
」表示不確定的文字有零個、或很多個舉例來說,來看看不確定文字只有一個的「?
」怎麼寫:
=MAXIFS(A:A, "蘋果?茶", B:B)
試算表會在 A 欄裡面搜尋符合「蘋果O茶」條件的文字後找最大值。
那麼「蘋果紅茶」、「蘋果青茶」、「蘋果綠茶」就會符合,但「蘋果茶」卻不會符合,「蘋果烏龍茶」、「蘋果普洱茶」也不符合。
再來看看不確定的文字有零個、或很多個的「*
」:
=MAXIFS(A:A, "蘋果*茶", B:B)
在 A 欄裡面搜尋符合「蘋果*茶」的文字。所以「蘋果紅茶」、「蘋果青茶」、「蘋果綠茶」會符合條件,「蘋果茶」也會,「蘋果烏龍茶」、「蘋果普洱茶」也會。
你也可以把「?
」跟「*
」放一起,做複雜的條件搜尋。舉例來說:
=MAXIFS(A:A, "?蘋果*茶", B:B)
在 A 欄裡面搜尋符合「O蘋果*茶」的文字,「青蘋果紅茶」、「青蘋果青茶」、「紅蘋果烏龍茶」就會符合條件,但「蘋果茶」、「蘋果烏龍茶」、「蘋果普洱茶」就會不符。
如果你想找的關鍵字恰好是「?
」或是「*
」的話,可以在前面加個波浪號「~
」:
=MAXIFS(A:A, "~?", B:B)
這樣就可以在 A 欄裡面尋找「?
」這個文字。
=MAXIFS(A:A, "~*", B:B)
同理,這樣就可以在 A 欄找「*
」這個文字。
不過,這類「按條件找 OO」的函式無法直接以函式結果作為條件使用,只能指定靜態的值、利用輔助欄或其他的替代方案來做,要小心一下。
我們來看看剛剛蘋果紅茶的例子:
我們想得到「蘋果紅茶」的售出數量總共有多少個,也就是:
= 10 + 90 + 1 + 20
= 121
如果要用 SUMIF
來寫的話,就是:
=SUMIF(A2:A14, "蘋果紅茶", B2:B14)
蘋果紅茶
」。這樣就會得到一樣的結果「121」了:
再來,假如我們想找「蘋果?茶
」的售出總件數好了。這邊的「蘋果?茶
」包含蘋果紅茶、蘋果青茶、蘋果奶茶等等各種「蘋果?茶
」的茶類,但不含蘋果烏龍茶跟蘋果普洱茶,因為「烏龍」跟「普洱」有兩個字:
這邊就可以下:
=SUMIF(A2:A14, "蘋果?茶", B2:B14)
範圍和加總範圍和剛剛一樣,只是條件改成了「蘋果?茶
」。來看看結果:
最後,來看看「蘋果*茶
」的總銷量,也就是只要是蘋果調味的茶(蘋果綠茶、蘋果紅茶、蘋果烏龍茶...)都算進去:
寫成 SUMIF
的話,就是:
=SUMIF(A2:A14, "蘋果*茶", B2:B14)
就會得到:
就這麼簡單!
SUMIFS
則是可以指定多個條件進行加總。來看看另外一張工作表:
假設我想找「已售出的蘋果紅茶的總銷量」好了,這邊就有兩個條件:
SUMIFS
就可以利用這兩個條件,來幫你加總:
OK,來看看怎麼做!
=SUMIFS(加總範圍, 第一組條件範圍, 第一組條件, [第二組條件範圍], [第二組條件], ...)
語法跟剛剛的 SUMIF
有一點點不一樣,加總範圍要先寫:
SUMIFS
判斷的第一組條件範圍。SUMIFS
判斷的第一組條件。SUMIFS
判斷的第二組條件範圍。SUMIFS
判斷的第二組條件。當然你還可以往後寫第三組、第四組、第N組,看你的條件有多少。
條件的寫法和剛剛 SUMIF
的寫法一樣,文字要用雙引號、可以用大於、小於、等於,也可以用萬用字元(?
跟 *
)。要記得條件範圍和條件必須要成雙成對地出現,不可以只寫其中一個喔!
我們就來解決上面的問題,找到「已售出的蘋果紅茶的總銷量」。售出數量在 B 欄,然後我們要滿足的條件有:
把這些條件拼湊起來,寫在 SUMIFS
上,我們就會得到:
=SUMIFS(B2:B14, C2:C14, "是", A2:A14, "蘋果紅茶")
B2
到 B14
。C2
到 C14
。SUMIFS
會在 C2
到 C14
尋找是「是」的儲存格。A2
到 A14
。SUMIFS
會在 A2
到 A14
尋找「蘋果紅茶」的儲存格。就會得到剛剛的 31 了!
我出兩個題目給你試試看,可以想想看 SUMIFS
怎麼寫:
⋯⋯⋯⋯第一題答案:95。
=SUMIFS(B2:B14, C2:C14, "否", A2:A14, "蘋果綠茶")
⋯⋯⋯⋯第二題答案:217。
=SUMIFS(B2:B14, C2:C14, "否", A2:A14, "蘋果*茶")
SUMIFS
就是這麼簡單,試著用用看吧!
如果你喜歡這次的文章,歡迎你透過這些方法支持我:
想要看更多文章的話,歡迎來到我的 Notion 頁面找找有沒有你需要的資源喔!
我是喜特先生,Mr. Sheet,我們下個教學見!