SUMIF 函數
SUMIF 只加總滿足一個條件的數字——區域小計、分類彙總、面試裡的「大於就加」全靠它。掌握 3 個參數結構、條件引號規則,以及 SUMIFS 的參數順序陷阱。
SUMIF 函數語法與 3 大參數結構
SUMIF(條件加總)逐格檢查 range 中符合 criteria 的儲存格,並把 sum_range 中對應位置的數字相加——一條公式完成「篩選+加總」兩步。
要檢查條件的範圍(例如區域欄 A2:A7)。SUMIF 會在這裡逐格比對 criteria。
條件:文字要加引號("North")、數字不用(100)、比較運算子也要引號(">100")、可串接儲存格(">" & D1)、支援萬用字元("North*")。
實際要加總的數字範圍(例如銷售額 B2:B7)。省略時 SUMIF 會直接加總 range 本身(例如只對 B2:B20 求大於 100 的和)。
Excel SUMIF 範例:依區域彙總銷售額
A 欄是區域,B 欄是銷售額。這則 SUMIF 範例只加總 North 區域。
| 區域 | 銷售額 |
|---|---|
| North | 1200 |
| South | 800 |
| North | 950 |
| East | 600 |
| North | 400 |
SUMIF 在 A2:A6 找出 North,並把 B2:B6 裡對應的銷售額相加:1200 + 950 + 400 = 2550。文字條件必須加引號。
SUMIFS 範例:同時依區域與產品加總
同一張表多了產品欄。這則 SUMIFS 範例只加總 North 區域的 Widgets,而且加總範圍放在最前面。
| 區域 | 產品 | 銷售額 |
|---|---|---|
| North | Widgets | 1200 |
| South | Widgets | 800 |
| North | Gadgets | 950 |
| North | Widgets | 400 |
SUMIFS 只把區域為 North 且產品為 Widgets 的銷售額相加:1200 + 400 = 1600。加總範圍必須放在第一個參數;若照 SUMIF 的順序來寫,公式不會報錯,只會回傳 0。
SUMIF 最常踩的 4 大陷阱
1. SUMIFS 的參數順序完全相反(面試必考)
SUMIF 是「條件在前,加總在後」;SUMIFS 是「加總在前,條件在後」:=SUMIFS(sum_range, range1, criteria1, …)。順序背反了不會報錯,只會回傳 0 或錯誤數字——面試官最愛考這一條。
2. 條件的引號規則
文字條件必須加引號:"North";純數字不用:100;比較運算子整體是一個字串:">=100"。把 >100 裸寫進公式會直接語法錯誤。
3. 不分大小寫 + 萬用字元會意外多算
SUMIF 比對不分大小寫(north = North),且 "North*" 會命中 North America、Northwest。資料裡有 Norten 時用精確值或改用 SUMPRODUCT 驗證,別讓萬用字元悄悄多算。
4. 回傳 0 的三大元兇
條件值前後有隱藏空格(TRIM 清洗)、sum_range 是文字型數字(VALUE 轉換)、range 與 sum_range 起點錯位——三種情況都不報錯,只回 0。
條件彙總三劍客:SUMIF vs SUMIFS vs SUMPRODUCT
SUMIF
單條件加總的標準答案,語法最短、可讀性最高。面試中「按區域/按品類彙總」的第一反應。
SUMIFS
多條件加總的正解(兩組條件以上)。記住口訣「先加總、後條件」,與 SUMIF 相反。Excel 2007 之前的舊檔案不支援。
SUMPRODUCT
萬能後備。=SUMPRODUCT((A2:A7="North")*B2:B7) 用乘法陣列實現條件加總,可疊加任意複雜邏輯,也是加權平均的標準答案。
Excel 與 Google Sheets 平台差異與進階用法
Microsoft Excel (365 / Desktop)
Excel 的 SUMIF 支援跨工作表引用:=SUMIF(Sheet2!A:A, "North", Sheet2!B:B)。注意 SUMIF 的 range 參數不接受陣列常數,多條件彙總請改用 SUMIFS 或 SUMPRODUCT。
Google Sheets
Google Sheets 語法完全相容,且支援 =ARRAYFORMULA(SUMIF(...)) 陣列展開用法;亦可使用 =QUERY() 一條完成分組彙總,但面試與通用場景仍以 SUMIF/SUMIFS 為標準答案。
更多條件彙總實戰關卡推薦
從 SUMIF 單條件、SUMIFS 多條件,到 SUMPRODUCT 加權平均,在真實業務情境中練出肌肉記憶。
常見問題
SUMIF 是如何運作的?
=SUMIF(range, criteria, sum_range) 在 range 中尋找符合 criteria 的儲存格,並將 sum_range 中對應的數字相加。例如 =SUMIF(A2:A7, "North", B2:B7) 加總 North 區域的銷售額。
為什麼我的 SUMIF 回傳 0?
常見原因:1) 文字條件沒加引號。2) sum_range 裡是文字型數字。3) 條件值前後有看不見的空格(用 TRIM 清洗)。4) range 與 sum_range 尺寸錯位。
SUMIF 與 SUMIFS 有何差別?
SUMIF 只接受一組條件;SUMIFS 接受兩組以上。注意參數順序:SUMIFS 的 sum_range 排在最前面——=SUMIFS(sum_range, range1, criteria1, …)——與 SUMIF 完全相反,是面試測驗的第一大陷阱。
怎麼只加總大於某個值的儲存格?
把運算子放進引號:=SUMIF(B2:B20, ">100") 只加總超過 100 的儲存格。若門檻存在儲存格裡,用串接:=SUMIF(B2:B20, ">" & D1)。
SUMIF 支援萬用字元嗎?
支援——* 代表任意多字元、? 代表恰好一個字元,例如 =SUMIF(A2:A20, "North*") 會加總所有以 North 開頭的區域。Excel 與 Google Sheets 的比對都不分大小寫。