在 Excel 中根據條件加總最小值或底部 N 個數值
在先前的教學中,我們已探討過 如何加總數據區域中最小的 n 個數值。本文將更進一步,示範如何在 Excel 中根據一個或多個條件,加總最低的 n 個數值!

在 Excel 中根據條件加總最小值或底部 N 個數值
假設我有一組如下方截圖所示的資料,現在希望加總「Apple」產品金額最低的 3 筆訂單。

在 Excel 中,若要根據條件加總範圍內最小的 n 個數值,可結合 SUM、SMALL 與 IF 函數建立陣列公式。通用語法如下:
{=SUM(SMALL(IF(range=criteria,values),{1,2,N}))}
Array formula, should press Ctrl + Shift + Enter keys together.
Array formula, should press Ctrl + Shift + Enter keys together.
- range=criteria:用於比對特定條件的儲存格範圍;
- values:包含您想加總的底部 n 個數值的清單;
- N:第 N 個最小值。
為解決上述問題,請將下列陣列公式套用至空白儲存格:
=SUM(SMALL(IF(($A$2:$A$14=D2), $B$2:$B$14),{1,2,3}))
接著同時按下 Ctrl + Shift + Enter 鍵,即可取得如下方截圖所示的正確結果:

公式說明:
=SUM(SMALL(IF(($A$2:$A$14=D2), $B$2:$B$14),{1,2,3}))
- IF(($A$2:$A$14=D2), $B$2:$B$14):當範圍 A2:A14 中的產品為「Apple」時,會從訂單清單(B2:B14)傳回對應的數值;若非「Apple」,則顯示 FALSE。您將獲得以下結果:{800;FALSE;FALSE;FALSE;1000;230;FALSE;FALSE;1600;FALSE;900;FALSE;500}。
- SMALL(IF(($A$2:$A$14=D2), $B$2:$B$14),{1,2,3}):此 SMALL 函數會自動忽略 FALSE 值,並傳回陣列中最小的 3 個數值,結果為:{230,500,800}。
- SUM(SMALL(IF(($A$2:$A$14=D2), $B$2:$B$14),{1,2,3}))=SUM({230,500,800}):最後,SUM 函數會將陣列中的數字加總,得出結果:1530.
提示:處理兩個或多個條件:
若您需要根據兩個或多個條件加總最小的 n 個數值,只需在 IF 函數中透過 * 字元加入其他範圍與條件,如下所示:
{=SUM(SMALL(IF((range 1=criteria 1)*(range 2=criteria 2) *(range 3=criteria 3)…,values),{1,2,N}))}
Array formula, should press Ctrl + Shift + Enter keys together.
Array formula, should press Ctrl + Shift + Enter keys together.
- Range 1=criteria 1:用於比對第一個條件的第一個儲存格範圍;
- Range 2=criteria 2:用於比對第二個條件的第二個儲存格範圍;
- Range 3=criteria 3:用於比對第三個條件的第三個儲存格範圍;
- values:包含您想加總的底部 n 個數值的清單;
- N:第 N 個最小值。
例如,我希望加總由 Kerry 所銷售的 Apple 產品中最低的 3 筆訂單金額,請套用下列公式:
=SUM(SMALL(IF(($A$2:$A$14=E2)*($B$2:$B$14=F2), $C$2:$C$14),{1,2,3}))
接著同時按下 Ctrl + Shift + Enter 鍵,即可取得所需結果:

相關函數:
- SUM:
- SUM 函數用於加總數值,可靈活加總個別數值、儲存格參照、範圍,或三者任意組合。
- SMALL:
- Excel 的 SMALL 函數會依照數值在升冪排序清單中的位置,傳回對應的數值。
- IF:
- IF 函數會測試特定條件,並根據結果為 TRUE 或 FALSE,傳回您指定的對應值。
更多文章:
- 加總最小值或底部 N 個數值
- 在 Excel 中,使用 SUM 函數加總儲存格範圍非常簡單;但有時您可能需要加總如下圖所示資料區域中最小(或底部)的 3 個、5 個,甚至任意 n 個數值。此時,只要結合 SUMPRODUCT 與 SMALL 函數,就能輕鬆達成!
- 在 Excel 中依帳齡小計發票金額
- 如以下截圖所示,在 Excel 中根據帳齡加總發票金額是一項常見任務,本教學將示範如何運用標準的 SUMIF 函數,依帳齡對發票金額進行小計。
- 加總所有數字儲存格並忽略錯誤值
- 當加總包含某些錯誤值的數字範圍時,一般的 SUM 函數將無法正確運作。若要僅加總數字並自動跳過錯誤值,可使用 AGGREGATE 函數,或結合 IFERROR 與 SUM 函數來達成目的。
最佳 Office 生產力工具
Kutools for Excel -助您脫穎而出
| 🤖 | KUTOOLS AI 助手:以以下方式革新數據分析:智慧執行 | 產生程式碼| 建立自訂公式 | 分析資料並產生圖表| 呼叫增強函數…… |
| 熱門功能:尋找、標示或標記重複值 | 刪除空白行 | 合併列或儲存格而不遺失資料 | 不使用公式的四捨五入…… | |
| 超級 VLookup:多重條件 | 多重值 | 跨多個工作表 | 模糊查找…… | |
| 進階下拉列表:簡易下拉式清單 | 相依下拉式清單 | 多選下拉式清單…… | |
| 欄位管理員:新增指定數量的欄位 | 移動欄位 | 切換隱藏欄位的可見狀態 |比較欄位以選擇相同/不同單元格…… | |
| 精選功能:網格聚焦 | 設計視圖 | 增強編輯欄 | 工作簿與工作表管理員|資源庫(自動文字)| 日期提取 | 合併工作表 | 加密/解密儲存格 | 依清單傳送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體儲存格/斜體/刪除線……) ...... | |
| 頂尖 15 工具組:12 文字工具(添加文本,刪除特定字符……)| 50+ 圖表 類型(甘特圖……)| 40+ 實用公式(基於生日計算年齡……)| 19 插入工具(插入二維碼,從路徑插入圖片……)| 12 轉換工具(金額轉大寫,匯率轉換……)| 7 合併和拆分工具(高級合併行,拆分 Excel 儲存格……)|……還有更多 |
在您的慣用語言中使用 Kutools – 支援英文、西班牙文、德文、法文、中文及其他 40+ 種語言!
Kutools for Excel 擁有超過 300 項功能,確保您所需的功能僅需一鍵即可取得……
Office Tab -在 Microsoft Office(包含 Excel)中啟用分頁式閱讀與編輯
- 一秒內在數十份開啟的文件間快速切換!
- 每天為您減少數百次滑鼠點擊,遠離滑鼠手困擾。
- 在檢視與編輯多份文件時,讓您的生產力提升高達 50%。
- 為 Office(包含 Excel)帶來如 Chrome、Edge 與 Firefox 般的高效能分頁體驗。