Skip to main content

如何在 Excel 中刪除重複項但保留其餘列的值?

Author: Sun Last Modified: 2025-08-06

在日常數據處理中,Excel 的「刪除重複項」功能通常會刪除整行,這可能會打亂其他列的數據以及整個工作表的結構。本文介紹了幾種方法,僅清除指定列中的重複值,同時保留每一行的其他數據,包括使用公式和篩選器、VBA 代碼以及 Kutools 外掛程式。每個解決方案都附有典型的使用案例、優勢和注意事項,幫助您快速選擇最適合您需求的方法。

remove duplicates keep rest-sample1  remove duplicates keep rest-sample2

使用篩選刪除重複項但保留其餘列的值(3 個步驟)

使用 VBA 刪除重複項但保留其餘列的值(4 個步驟)

使用 Kutools for Excel 刪除重複項但保留其餘列的值(2 個步驟)good idea3


使用篩選刪除重複項但保留其餘列的值

在清除重複值時保持數據結構的一個可靠方法是將簡單公式與 Excel 的篩選功能結合起來。當您希望從單一列中視覺化識別並有選擇地刪除重複項時,這種方法特別有效,確保每行中的其他信息不受影響。該技術適用於中小型數據集,並讓用戶對刪除過程擁有完全的控制權。

1. 選擇數據範圍旁邊的一個空白單元格(例如,如果您的數據從 A2 開始,則選擇 D2),然後輸入公式: =A3=A2此公式通過比較每個單元格與其上方的單元格來標記重複項。向下拖動填充柄以將公式應用於其餘行。請參見截圖:
enter a formula and drag it to fill other cells

2. 接下來,選擇整個數據範圍——包括新添加的公式列——然後點擊 數據 > 篩選 啟用篩選功能。這樣可以讓您篩選出標記為重複項的那些行。
click Data > Filter to enable Filter feature

3. 點擊 篩選圖標 在公式列中(例如,D 列),從下拉列表中僅選擇 TRUE所有重複條目(最後一個出現的除外)將被顯示出來。
check TURE from the drop down list

4. 點擊 確定後,所有已識別的重複值將被顯示。選擇這些重複單元格並按下 刪除 鍵清除它們,而不影響其所在行中的其他單元格。這將在刪除指定列中的重複值時保留行數據結構。請參閱下方截圖:
select all of the duplicate values, press Delete key to remove them

提示:請謹慎選擇僅選中重複單元格——而非整行——以便只刪除目標值。

5. 要恢復正常視圖,請再次點擊 數據 > 篩選 以禁用篩選功能。如果不再需要輔助公式列,可以刪除或清除它。現在,指定列中的重複項已被刪除,所有其他行值保持不變。
Click Data > Filter to disable Filter

優勢: 無需 VBA 或外掛程式;步驟清晰且手動錯誤可輕鬆糾正。
劣勢: 並非完全自動化——涉及手動清理;對於非常大的數據集效率較低。


使用 VBA 刪除重複項但保留其餘列的值

VBA 提供了一種更自動化的方法來從列中刪除重複項,同時保持同一行中的所有其他數據不受影響。此方法非常適合處理重複的清理任務,特別是在處理大量數據或需要經常重複刪除程序時。使用 VBA 可以減少手動錯誤並節省時間,但最適合熟悉基本 Excel 腳本的用戶。

1. 按 Alt + F11 打開 Microsoft Visual Basic for Applications 編輯器窗口。

2. 在 VBA 窗口中,轉到 插入 > 模塊,然後將以下代碼複製並粘貼到新模塊中。此代碼從所選範圍內刪除重複值,但保留行中的所有其他信息:

VBA:刪除重複項但保留其餘列的值

Sub RemoveDuplicates()
'UpdatebyExtendoffice20160918

    Dim xRow As Long
    Dim xCol As Long
    Dim xrg As Range
    Dim xl As Long
    On Error Resume Next
    Set xrg = Application.InputBox("Select a range:", "Kutools for Excel", _
                                    ActiveWindow.RangeSelection.AddressLocal, , , , , 8)

    xRow = xrg.Rows.Count + xrg.Row - 1
    xCol = xrg.Column
    'MsgBox xRow & ":" & xCol
    Application.ScreenUpdating = False
    For xl = xRow To 2 Step -1
        If Cells(xl, xCol) = Cells(xl - 1, xCol) Then
            Cells(xl, xCol) = ""
        End If
    Next xl
    Application.ScreenUpdating = True
    
End Sub

copy and paste the code into the module

3. 要運行腳本,按 F5 或點擊 運行 按鈕。將彈出一個對話框窗口,提示您選擇要刪除重複值的範圍。然後點擊 確定 確認。
vba code to select a range to remove duplicate values from

4. 宏將執行並在指定範圍內刪除重複值,留下空白單元格,而所有其他行內容保持不變。這有效地保留了工作表結構。
the duplicate values have been removed from selection

優勢: 對於更大或重複的數據集非常高效;減少手動操作。
劣勢: 需要啟用宏並具備基本的 VBA 知識;編輯往往是不可逆的,因此建議在備份副本上操作。


使用 Kutools for Excel 刪除重複項但保留其餘列的值

如果您安裝了 Kutools for Excel,您可以簡化從範圍或列中刪除重複項的過程,同時保留其餘行數據。Kutools 提供了直觀且高效的重複數據處理功能,特別適合需要頻繁清理 Excel 數據列表的用戶。

Kutools for Excel 提供超過 300 種進階功能,簡化複雜任務,提升創造力與效率。 結合 AI 能力,Kutools 能夠精準自動化任務,讓數據管理變得輕而易舉。Kutools for Excel 的詳細資訊...免費試用...

安裝 Kutools for Excel 後,您可以根據自己的數據和偏好使用以下兩種方法之一:

方法1:合併相同儲存格(2 個步驟)

1. 突出顯示您希望去重的重複值。然後,導航到 Kutools > 合併與分割 > 合併相同儲存格。這將把連續的重複值合併到一個單元格中,方便清除除第一個實例外的所有值。
click Merge Same Cells feature of kutools

2. 合併後,選擇合併的單元格,前往 首頁 > 合併與居中 > 取消合併單元格 將其恢復為標準單元格。重複項現在將顯示為空白單元格,並且每個組中只保留唯一的值。
click Home > Merge & Center > Unmerge Cells to split them

結果將類似於下面的示例,其中重複項已被刪除,並且保留了其餘列的值:
get the result

 

方法2:選擇重複與唯一單元格(4 個步驟)

1. 選擇要刪除重複值的整個列表或範圍。點擊 Kutools > 選擇 > 選擇重複與唯一單元格.
click Select Duplicate & Unique Cells feature of kutools

2. 在 選擇重複與唯一單元格 對話框中,選擇 重複值(除了第1個)規則 部分。這將突出顯示第一個出現之後的所有重複實例。
check Duplicates (Except1st one) option in the Rule section

3. 點擊 確定將通知您有多少個重複單元格被選中。再用另一個 確定.
a dialog pops out to remind you how many duplicates have been selected

確認。4. 簡單按下 Delete 鍵即可刪除這些選中的重複值,其餘行數據保持不變。

press Delete key to remove the selected duplicate values

優勢: 無需公式或編碼;非常快速且易於使用;支持批量操作。
劣勢: 需要額外安裝。


摘要與故障排除:上述每個解決方案都提供了在 Excel 中刪除重複值的實際方法,同時保留其餘行數據完整。篩選和公式方法適合透明、逐步的手動處理;VBA 對於批量或重複清理很有價值;而 Kutools 則為常規用戶提供了便捷、流暢的操作。始終仔細檢查所選範圍,在批量操作之前創建備份副本,並選擇符合您工作流程和公式的舒適度的解決方案。如果遇到漏掉的重複項或意外數據丟失等問題,請檢查輔助列的準確性,驗證排序,並在刪除前確認選擇正確。

最佳 Office 辦公效率工具

🤖 Kutools AI Aide:徹底革新數據分析,基於智能執行|生成程式碼|創建自訂公式|分析數據並生成圖表|調用 Kutools Functions
熱門功能查找、選取項目的背景色或標記重複值 | 刪除空行 | 合併列或單元格且不丟失資料 | 四捨五入...
高級 LOOKUP多條件查找|多值查找|多表查找|模糊查找...
高級下拉列表快速創建下拉列表 | 關聯下拉列表 | 多選下拉列表 ...
列管理器添加指定數量的列 | 移動列 | 切換隱藏列的可見狀態 | 區域與列比較 ...
精選功能網格聚焦 | 設計檢視 | 增強編輯欄 | 工作簿及工作表管理器 | 資源庫 (自動文本) | 日期提取器 | 合併資料 | 加密/解密儲存格 | 按清單發送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體/傾斜/刪除線 ...)...
前15 大工具集12 款文本工具添加文本刪除特定字符,...)|50+ 種圖表 類型甘特圖,...)|40+ 實用 公式基於生日計算年齡,...)|19 款插入工具插入QR码按路徑插入圖片,...)|12 款轉換工具金額轉大寫匯率轉換,...)|7 款合併和分割工具高級合併行分割儲存格,...)| ...以及更多
使用 Kutools 支援你的語言——支援英語、西班牙語、德語、法語、中文及40 多種語言!

利用 Kutools for Excel 大幅提升你的 Excel 技能,感受前所未有的高效體驗。 Kutools for Excel 提供超過300 項高級功能,助你提升效率並保存時間。 點此查看你最需要的功能...


Office Tab 為 Office 帶來標籤式介面,讓你的工作更加輕鬆

  • 啟用 Word、Excel、PowerPoint 的標籤式編輯和閱讀功能
  • 在同一個視窗的標籤中打開和創建多個文件,而不是在新窗口中分開開啟。
  • 可提升你50% 的工作效率,每天為你大量減少滑鼠點擊次數!