如何在 Excel 中根據相同值快速摺疊欄位?

使用樞紐分析表根據值精簡資料列
使用 Kutools for Excel 根據值精簡資料列
使用公式根據值精簡資料列
使用 VBA 巨集精簡並加總資料列
使用樞紐分析表根據值壓縮列
Excel 的樞紐分析表功能旨在快速、高效地彙總資料,特別適用於需根據某一欄位中的重複值壓縮列,並對另一欄位中的數值資料進行彙總的情境。此功能非常適合希望取得互動式摘要表格的使用者,該表格可進一步分組、篩選與深入分析結果。樞紐分析表擅長處理大型資料集,且僅需極少的操作即可輕鬆更新。
1. 選取包含欄位標題的完整資料範圍,接著前往頂部功能區的插入選項卡,並點擊樞紐分析表。此時將彈出「建立樞紐分析表」對話方塊—請根據您的工作流程需求,選擇將樞紐分析表置於新工作表或現有工作表,然後按一下確定。請參閱螢幕截圖:
2. 在「樞紐分析表欄位」窗格中,將訂單欄位拖曳至列區域,並將銷售額欄位拖曳至值區域,系統將自動產生摘要表格,列出每個獨特訂單及其對應的銷售總額。
提示:樞紐分析表預設會對數值欄位進行加總。若您需要其他計算方式(例如平均值、計數、最小值或最大值),請點選「值」區段中「銷售總額」旁的下拉箭頭,選取值欄位設定,再選擇合適的運算方式。
優點:
- 非常適合進行動態分析與資料探索。
- 若您的源數據有所變更,即可輕鬆更新。
- 提供豐富的選項,讓您進一步篩選、分組與調整版面。
- 進階自訂需熟悉樞紐分析表的控制項。
使用 Kutools for Excel 根據值壓縮列
「Kutools for Excel」提供簡化的合併功能,輕鬆處理重複行並彙總資料,特別適合重複性高或規模龐大的任務。此工具專為管理大量資料的使用者設計,無需繁複手動操作,即可快速轉換或彙總資訊。
1. 先反白標示您要壓縮的數據區域,接著前往工具列上的 Kutools,並點選合併和拆分 > 高級合併行。
2。「高級合併行」對話方塊將隨即出現。您需要:
- 點擊包含重複項目的欄位標題,並將其設為主索引鍵,即可標示 Excel 應使用哪些值來對資料進行分組。
- 按一下包含您要彙總數值的欄位標題。在運算方式下拉式選單中,於「計算」區段依需求選擇合適的計算方式(例如總和、平均值、最大值或最小值)。
- 設定完成後,請按一下確定以處理合併作業。

3. 欄位將被壓縮,並套用指定的計算方式至所選欄位。
實用技巧:
- 若您的資料集中包含空白儲存格或非數值文字,請務必確認計算欄位僅包含數字,以避免產生非預期的結果。
- 處理大型資料集時,尤其推薦使用 Kutools,因為手動合併不僅耗時,還極為繁瑣。
- 極速簡便,輕鬆應付批次處理。
- 可完全自訂重複資料的合併方式與彙總欄位。
- 需先安裝 Kutools for Excel 增益集。
- 會修改您的原始數據區域(若尚未儲存,可按 Ctrl+Z 復原)。
Kutools for Excel-透過超過 300 項必備工具全面強化 Excel,讓您的工作更快速、更輕鬆,並運用 AI 功能實現更聰明的資料處理與高效生產力!立即取得
使用公式根據值壓縮列
Excel 公式提供一種彈性方式來彙總資料,無需重構工作表。此方法適用於自訂任務、小型資料集,或當您希望在保留原始資料完整的前提下,於其他區域壓縮資訊。常用公式如 SUMIF 可自動為每個獨特值計算總計。
1. 在您的數據區域旁選擇一個空白儲存格(例如 D2),並輸入下列公式。按下 Shift + Ctrl + Enter 鍵,即可計算出第一個獨特值。
=INDEX($A$2:$A$12,MATCH(0,COUNTIF($D$1:D1,$A$2:$A$12),0))
注意:請調整公式中的範圍——「A2:A12」為可能包含重複項目的清單,「D1」為結果的起始儲存格。務必確認儲存格參照與您實際的工作表一致;若需將公式複製至其他儲存格,請使用絕對參照。
2. 選取 D2(即輸入公式的儲存格),向下拖曳自動填滿控點,直至清單結尾,或直到出現錯誤值(代表所有獨特項目皆已列出)。
3. 刪除清單末尾出現的所有錯誤訊息。接著,移至結果區域的相鄰儲存格(例如 E2),輸入下列公式以計算各項目的總和,按下 Enter,再向下填滿即可套用至其他列。
=SUMIF($A$2:$A$12,D2,$B$2:$B$12) 
注意:「A2:A12」為用來檢查重複項目的來源欄位,「D2」為包含第一個唯一值的儲存格,「B2:B12」則為包含銷售額或其他數值的欄位。請依您的資料集調整這些參照。
技巧與注意事項:
- 公式不會變更原始資料,特別適合用於並排呈現的摘要報表。
- 如有需要,您也可使用其他彙總函數(例如 )COUNTIF、AVERAGEIF 等),輕鬆滿足您的分析需求!
使用 VBA 巨集壓縮並加總列
處理特別龐大的資料集,或需要反覆根據相同值壓縮列時,使用 VBA 巨集自動化此程序可大幅節省時間與精力。此方法能批次處理數百甚至數千列,也能輕鬆整合至您的自訂工作流程中。本文提供的 VBA 解決方案會針對另一欄位中的每個獨特項目,加總指定欄位的數值,並將壓縮後的結果輸出至新工作表,同時完整保留您的原始資料。
1. 開啟 Excel,並按下 Alt+F11 進入 Visual Basic for Applications 編輯器。在 VBA 編輯器中,點選插入> 模組,即可建立新的程式碼模組。將下列程式碼複製並貼上至模組視窗:
Sub CondenseAndSumRows()
Dim srcWS As Worksheet, destWS As Worksheet
Dim lastRow As Long, i As Long
Dim dict As Object
Dim keyCol As String, sumCol As String
Dim dataRange As Range, cell As Range
On Error Resume Next
Set dict = CreateObject("Scripting.Dictionary")
Set srcWS = Application.ActiveSheet
' Prompt to select the whole data range
Set dataRange = Application.InputBox("Select full data range including headers", "KutoolsforExcel", Type:=8)
keyCol = Application.InputBox("Select header name for key/duplicate column", "KutoolsforExcel", Type:=2)
sumCol = Application.InputBox("Select header name for numeric/sum column", "KutoolsforExcel", Type:=2)
If dataRange Is Nothing Or keyCol = "" Or sumCol = "" Then Exit Sub
' Get column numbers by header
Dim keyColNum As Integer, sumColNum As Integer
For i = 1 To dataRange.Columns.Count
If dataRange.Cells(1, i).Value = keyCol Then
keyColNum = i
End If
If dataRange.Cells(1, i).Value = sumCol Then
sumColNum = i
End If
Next i
If keyColNum = 0 Or sumColNum = 0 Then
MsgBox "Column headers not found. Check header spelling!", vbExclamation
Exit Sub
End If
' Summing values for each key
For i = 2 To dataRange.Rows.Count
If Not IsNumeric(dataRange.Cells(i, sumColNum).Value) Then
' Ignore non-numeric, prevent errors
GoTo SkipRow
End If
If dict.Exists(dataRange.Cells(i, keyColNum).Value) Then
dict(dataRange.Cells(i, keyColNum).Value) = dict(dataRange.Cells(i, keyColNum).Value) + dataRange.Cells(i, sumColNum).Value
Else
dict(dataRange.Cells(i, keyColNum).Value) = dataRange.Cells(i, sumColNum).Value
End If
SkipRow:
Next i
' Output results to new worksheet
Set destWS = Worksheets.Add
destWS.Name = "Condensed Summary"
destWS.Cells(1, 1).Value = keyCol
destWS.Cells(1, 2).Value = "Total " & sumCol
i = 2
Dim k
For Each k In dict.Keys
destWS.Cells(i, 1).Value = k
destWS.Cells(i, 2).Value = dict(k)
i = i + 1
Next k
MsgBox "Condensing complete! Check the worksheet 'Condensed Summary'.", vbInformation
End Sub 2. 接下來,選取模組後,點擊
按鈕或按下 F5 執行巨集。系統將彈出對話方塊,提示您選取完整的資料範圍(包含標題),並指定關鍵欄位(重複欄位)與數值欄位(加總欄位)的欄位標題。依照畫面指示操作,巨集便會自動依唯一值計算合計,並將結果輸出至名為「Condensed Summary」的新工作表中,確保您的原始工作表完整保留,全面保障資料安全!
疑難排解:
- 若出現「找不到欄位標題」錯誤,請確認輸入的標題與資料工作表中的標題完全相符(區分大小寫)。
- 若未建立摘要,請確認選擇區域包含標題與資料,且彙總欄位中至少有一個數值。
優點:
- 可重複使用,並適用於全新資料集。
- 處理超大檔案時速度極快,且無需額外增益集。
- 未來可擴充,以合併其他欄位或自動執行額外計算。
摘要
當您在 Excel 中需要根據相同值合併或分析資料列時,選擇適當的方法取決於您的目標與活頁簿結構:
- 樞紐分析表最適合用於互動式分析與快速摘要,尤其適用於資料持續變動的環境。
- Kutools for Excel 提供直覺且可自訂的合併功能,非常適合需要反覆執行任務卻不想使用指令碼的使用者。
- 公式提供極致的彈性,便於稽核,且非常適合用於靜態報表或自訂邏輯。
- VBA 巨集能有效自動化大型或重複性的批次作業,無需人工介入即可產出精簡的新報表。
最佳 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 天完整功能試用— 無需註冊,無需信用卡
- 超值之選— 比單獨購買各增益集更省費用
