如何在 Excel 清單中加總最大的 3 個數值或最小的 3 個數值?
在 Excel 中,使用 SUM 函數計算整個數值範圍的總和相當簡單。然而,在商業與數據分析情境中,經常需要加總資料集中最大或最小的幾個數值——例如找出前三名銷售業績,或評估最低的五項支出。隨著資料集規模擴大,手動執行此類任務不僅繁瑣,還容易出錯。所幸,Excel 提供多種高效方法,輕鬆解決這類需求。
以下提供完整的逐步操作指南,包含公式解法、實用的工具替代方案、適用於進階自動化的 VBA 巨集,以及適合處理群組資料的資料透視表方法。每種方法皆針對不同情境設計,讓您能依需求選擇最合適的解決方案。
在清單中使用絕對值求和與 Kutools for Excel ![]()
使用公式加總範圍內最大/最小的 3 個數值
假設您在 Excel 中有一組資料,想快速加總前三名或後三名的數值——這在績效評估、排名分析,或是聚焦離群值時相當常見。

此解法有兩種常用公式方法:
1。LARGE 與 SMALL 函數公式:
運用 LARGE 函數,輕鬆找出選取區域中第 n 大的數值並加以加總!此方法直覺又靈活,當您需要加總不同數量的最大值或最小值時,尤其方便高效。
在空白儲存格(例如 E1)中輸入下列公式:
=LARGE(A1:D10,1)+LARGE(A1:D10,2)+LARGE(A1:D10,3) 輸入公式後,按下 Enter,即可立即看到最大 3 個數值的總和!

完成後,結果將顯示於您選取的儲存格中。

注意事項:
- 若要加總前 5 個數值,請相應擴充公式:
=LARGE(A1:D10,1)+LARGE(A1:D10,2)+LARGE(A1:D10,3)+LARGE(A1:D10,4)+LARGE(A1:D10,5) - 若要加總最小的數值,請以類似方式使用 SMALL 函數:
=SMALL(A1:D10,1)+SMALL(A1:D10,2)+SMALL(A1:D10,3)
此方法適用於較小的 n 值,但當 n 值較大時,手動擴充將變得繁瑣費時。
2. 適用於較大或較小 n 值的陣列公式:
對於較大的加總需求,請使用陣列公式以提升可擴充性並簡化語法:
在儲存格中輸入:
=SUM(LARGE(A1:D10,{1,2,3})) 然後按下 Ctrl + Shift + Enter,而非僅按 Enter(適用於舊版 Excel)。此操作將計算前三個最大值的總和,請根據所需數量調整大括號內的數字。若需加總最大的 20 個數值,請嘗試:
=SUM(LARGE(A1:D10,ROW(INDIRECT("1:20")))) 同樣地,請使用 Ctrl + Shift + Enter 對於 Excel 365 及更新版本,由於陣列公式支援已大幅提升,只需按下標準的 Enter 鍵即可。請將「20」替換為您所需的任意 n 值。同樣地,若要加總最小的 n 個數值,請使用:
=SUM(SMALL(A1:D10,{1,2,3})) =SUM(SMALL(A1:D10,ROW(INDIRECT("1:3")))) 使用 VBA 程式碼加總範圍內最大或最小的 n 個數值
對於需要頻繁計算前 n 項或後 n 項數值總和的使用者,或是希望針對不同資料集自動化此流程的人來說,VBA 巨集提供了一個高效解決方案,尤其在 n 值經常變動或資料範圍龐大時更顯實用。
此巨集能根據您的偏好,從所選區域中加總最大或最小的 n 個數值,不僅簡化重複性分析,還便於更新與自訂。
- 按一下開發人員工具 > Visual Basic,即可開啟 VBA 編輯器視窗。(若您未看到「開發人員工具」,請前往 Excel 選項 > 自訂功能區啟用。)
- 在 VBA 編輯器中,選取插入 > 模組,並將下列程式碼貼到新模組中:
Sub SumTopOrBottomNValues()
Dim WorkRng As Range
Dim n As Integer
Dim i As Integer
Dim arr() As Double
Dim result As Double
Dim choice As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Select a range:", xTitleId, WorkRng.Address, Type:=8)
choice = Application.InputBox("Type 'L' for largest, 'S' for smallest:", xTitleId, "L", Type:=2)
n = Application.InputBox("Sum how many values? n =", xTitleId, 3, Type:=1)
If WorkRng Is Nothing Then Exit Sub
ReDim arr(1 To WorkRng.Count)
i = 1
For Each cell In WorkRng
If IsNumeric(cell.Value) Then
arr(i) = cell.Value
Else
arr(i) = 0
End If
i = i + 1
Next
If choice = "L" Or choice = "l" Then
Call BubbleSortDescending(arr)
ElseIf choice = "S" Or choice = "s" Then
Call BubbleSortAscending(arr)
Else
MsgBox "Invalid choice. Enter 'L' or 'S'."
Exit Sub
End If
result = 0
For i = 1 To WorksheetFunction.Min(n, UBound(arr))
result = result + arr(i)
Next
MsgBox "Sum of " & n & " " & IIf(choice = "L" Or choice = "l", "largest", "smallest") & " values is: " & result
End Sub
Sub BubbleSortDescending(arr() As Double)
Dim i As Integer, j As Integer, temp As Double
For i = LBound(arr) To UBound(arr) - 1
For j = i + 1 To UBound(arr)
If arr(i) < arr(j) Then
temp = arr(i)
arr(i) = arr(j)
arr(j) = temp
End If
Next j
Next i
End Sub
Sub BubbleSortAscending(arr() As Double)
Dim i As Integer, j As Integer, temp As Double
For i = LBound(arr) To UBound(arr) - 1
For j = i + 1 To UBound(arr)
If arr(i) > arr(j) Then
temp = arr(i)
arr(i) = arr(j)
arr(j) = temp
End If
Next j
Next i
End Sub 3. 貼上程式碼後,請點擊
(執行)按鈕來執行巨集,系統將立即提示您:
- 選取您的數據區域;
- 輸入「L」以加總最大值,或輸入「S」以加總最小值。
- 輸入您所需的數量 n。
確認後,巨集將根據您指定的條件計算並顯示總和。若所選範圍包含非數值資料,系統會自動將其視為零,以避免計算錯誤。為確保結果準確,請務必確認選取的範圍正確無誤,並輸入有效的 n 值。
使用資料透視表加總每個分類的前 n 個數值
若您的資料已依分類群組(例如銷售區域、產品線等)整理,並需加總每個群組中前 n 個數值,資料透視表可透過其內建的數值篩選功能,提供強大而靈活的解決方案。
此方法最適用於包含明確分類與數值欄位的表格資料,例如加總每個區域銷售金額前三名的總和。
- 首先,選取您的資料表,並從插入選項卡中插入資料透視表。
- 在資料透視表欄位清單中,將您的分類欄位拖曳至「列」區域,並將數值欄位拖曳至「值」區域(並確認已設定為「加總」)。
- 接著,按一下「列標籤」區域中數值欄位旁的下拉箭頭,然後選擇數值篩選 > 前 10.
- 在對話方塊中,將「前」設為 3(或您偏好的任意 n 值),並指定要篩選的欄位,即可讓資料透視表僅顯示每個分類中的前 n 項。
- 表格將隨即顯示每個群組在過濾後數值的加總結果。
注意:資料透視表的數值篩選在資料格式整齊且分類一致時效果最佳。若需加總「後 n 項」數值,請務必使用「後 n 項」篩選,而非「前 n 項」。此方法靈活適用於摘要報表與快速視覺分析!請注意,資料透視表會隨原始資料變更而動態更新,但可能需要手動重新整理(在表格上按右鍵 > 重新整理)。
在清單中使用絕對值求和與 Kutools for Excel
在某些情況下,您的清單可能同時包含正數與負數,而您需要的是它們的絕對值總和,而非一般的算術總和。這在財務與科學計算中尤為實用,特別是當關注重點在於數值的大小,而非其正負號時。Kutools for Excel 提供便捷的「絕對值求和」功能,讓您輕鬆高效地完成此任務。

安裝 Kutools for Excel 後,請依照下列步驟操作:
1. 選取任一空白儲存格作為結果位置,然後點選 Kutools> 公式助手> 公式助手。
2. 在公式助手視窗中,勾選篩選方塊,並於搜尋列輸入「sum」。從顯示的公式中選擇絕對值求和,接著在引數輸入區域中,點擊
指定您的範圍,再按確定確認。
系統將立即計算並顯示絕對值的總和。
Kutools 簡化了此流程,不僅降低公式錯誤風險,更節省寶貴時間,尤其適合不熟悉複雜 Excel 函數的使用者。但請注意,此功能專注於絕對值加總——雖與加總最大值或最小值的主題略有不同,卻在會計、對帳或測量等情境中往往極具價值。
相關文章:
最佳 Office 生產力工具
| 🤖 | KUTOOLS AI 助手:基於以下內容徹底革新數據分析:智慧執行 | 產生程式碼| 建立自訂公式 | 分析資料並產生圖表| 呼叫增強函數…… |
| 熱門功能:尋找、醒目提示或標記重複值 | 刪除空白行 | 合併列或儲存格而不遺失資料 | 不使用公式的四捨五入…… | |
| 高級 LOOKUP:多重條件 VLookup | 多重數值 VLookup | 跨多個工作表 VLookup | 模糊查找…… | |
| 高級下拉列表:快速建立下拉式清單 | 相依式下拉式清單 | 多選下拉式清單…… | |
| 欄位管理員:新增指定數量的欄位|移動欄位|切換隱藏欄位的可見狀態|比較範圍與欄位…… | |
| 精選功能:網格聚焦 | 設計視圖 |增強編輯欄 | 工作簿與工作表管理員 | 資源庫(自動文字)| 日期提取 | 合併工作表 | 加密/解密儲存格 | 依清單傳送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體儲存格/斜體/刪除線……) ...... | |
| 頂尖 15 工具組:12 文字工具(添加文本,刪除特定字符,……)| 50+ 圖表 類型(甘特圖,……)| 40+ 實用公式(基於生日計算年齡,……)| 19 插入工具(插入二維碼,從路徑插入圖片,……)| 12 轉換工具(金額轉大寫,匯率轉換,……)| 7 合併和拆分工具(高級合併行,分割儲存格,……)|……以及更多 |
運用 Kutools for Excel 強化您的 Excel 技能,體驗前所未有的高效能!Kutools for Excel 提供超過 300 項進階功能,大幅提升生產力並節省寶貴時間。立即點擊,取得您最需要的功能……
Office Tab 為 Office 帶來分頁式介面,讓您的工作更輕鬆自在!
- 在 Word、Excel、PowerPoint 中啟用分頁式編輯與閱讀功能,以及 Access、Visio 與 Project。
- 在同視窗的新分頁中開啟並建立多份文件,而非另開新視窗。
- 每天為您提升 50% 的工作效率,並省下數百次滑鼠點擊!
所有 Kutools 增益集,一個安裝程式
Kutools for Office 套件整合了 Excel、Word、Outlook 與 PowerPoint 的增益集,以及 Office Tab Pro,非常適合需要跨多個 Office 應用程式協作的團隊使用!
- 全能套件— 包含 Excel、Word、Outlook 與 PowerPoint 增益集,以及 Office Tab Pro
- 一個安裝程式,一個授權— 數分鐘內即可完成設定(支援 MSI)
- 協同運作更出色— 在多個 Office 應用程式間實現流暢的生產力體驗
- 30 天完整功能試用— 無需註冊,無需信用卡
- 超值之選— 比單獨購買各增益集更省費用