如何在 Excel 中一次查找和刪除多個匹配項?
在 Excel 中處理大數據時,能夠在任何特定時刻快速找到您需要的信息至關重要。 這就是您需要查找和替換功能的時候,它可以幫助您在活動工作表或整個工作簿中查找和突出顯示特定值或格式,然后對結果執行您想要的操作,例如刪除或替換它們。 但是,使用 Excel 的查找和替換,您一次只能找到一個值。 在本教程中,我將介紹一種快速查找多個不同值并在 Excel 中一次刪除它們的方法。
使用 VBA 一次查找和刪除多個匹配項
使用“選擇特定單元格”功能一次查找和刪除多個匹配項
使用 VBA 一次查找和刪除多個匹配項
我們創建了兩個 VBA 代碼來幫助您在所選范圍內或跨多個工作表中查找多個不同的值并立即刪除它們。 請按照以下步驟并根據您的需要運行代碼。
1. 在 Excel 中,按 其他 + F11 鍵打開 Microsoft Visual Basic應用程序 窗口。
2。 點擊 插頁 > 模塊. 然后將以下任一 VBA 代碼復制到 模塊
窗口。
VBA代碼1:一次查找并刪除所選范圍內的多個匹配項
Sub FindAndDeleteDifferentValues_Range()
Updated by ExtendOffice 20220823
Dim xRg As Range
Dim xFindStr As String
Dim xFindRg As Range
Dim xARg As Range
Dim xURg As Range
Dim xFindRgs As Range
Dim xFAddress As String
Dim xBol As Boolean
Dim xJ
xArrFinStr = Array("sales", "9", "@") Enter the values to delete, enclose each with double quotes and separate them with commas
On Error Resume Next
Set xRg = Application.InputBox("Please select the search scope:", "Kutools for Excel", , Type:=8)
If xRg Is Nothing Then Exit Sub
xBol = False
For Each xARg In xRg.Areas
Set xFindRg = Nothing
Set xFindRgs = Nothing
Set xURg = Application.Intersect(xARg, xARg.Worksheet.UsedRange)
For Each xFindRg In xURg
For xJ = LBound(xArrFinStr) To UBound(xArrFinStr)
If xFindRg.Text = xArrFinStr(xJ) Then
xBol = True
If xFindRgs Is Nothing Then
Set xFindRgs = xFindRg
Else
Set xFindRgs = Application.Union(xFindRgs, xFindRg)
End If
End If
Next
Next
If Not xFindRgs Is Nothing Then
xFindRgs.ClearContents
End If
Next
If xBol Then
MsgBox "Successfully deleted."
Else
MsgBox "No results found."
End If
End Sub
請注意: 在片段中 xArrFinStr = Array("sales", "9", "@") 在第 13 行,你應該替換 “銷售”、“9”、“@” 對于要查找和刪除的實際值,請記住用雙引號將每個值括起來并用逗號分隔它們。
VBA 代碼 2:一次在多個工作表中查找和刪除多個匹配項
Sub FindAndDeleteDifferentValues_WorkSheets()
Updated by ExtendOffice 20220823
Dim xRg As Range
Dim xFindStr As String
Dim xFindRg As Range
Dim xARg, xFindRgs As Range
Dim xWShs As Worksheets
Dim xWSh As Worksheet
Dim xWb As Workbook
Dim xURg As Range
Dim xFAddress As String
Dim xArr, xArrFinStr
Dim xI, xJ
Dim xBol As Boolean
xArr = Array("Sheet1", "Sheet2") Names of the sheets where to find and delete the values. Enclose each with double quotes and separate them with commas
xArrFinStr = Array("sales", "9", "@") Enter the values to delete, enclose each with double quotes and separate them with commas
On Error Resume Next
Set xWb = Application.ActiveWorkbook
xBol = False
For xI = LBound(xArr) To UBound(xArr)
Set xWSh = xWb.Worksheets(xArr(xI))
Set xFindRg = Nothing
xWSh.Activate
Set xFindRgs = Nothing
Set xURg = xWSh.UsedRange
Set xFindRgs = Nothing
For Each xFindRg In xURg
For xJ = LBound(xArrFinStr) To UBound(xArrFinStr)
If xFindRg.Text = xArrFinStr(xJ) Then
xBol = True
If xFindRgs Is Nothing Then
Set xFindRgs = xFindRg
Else
Set xFindRgs = Application.Union(xFindRgs, xFindRg)
End If
End If
Next
Next
If Not xFindRgs Is Nothing Then
xFindRgs.ClearContents
End If
Next
If xBol Then
MsgBox "Successfully deleted."
Else
MsgBox "No results found."
End If
End Sub
請注意:
在片段中 xArr = Array("Sheet1", "Sheet2") 在第 15 行,你應該替換 “表 1”、“表 2” 使用要在其中查找和刪除值的工作表的實際名稱。 請記住用雙引號將每個工作表名稱括起來,并用逗號分隔它們。
在片段中 xArrFinStr = Array("sales", "9", "@") 在第 16 行,你應該替換 “銷售”、“9”、“@” 對于要查找和刪除的實際值,請記住用雙引號將每個值括起來并用逗號分隔它們。
3。 按 F5 運行 VBA 代碼。 請注意: 如果使用 VBA代碼1,將彈出一個對話框,要求您選擇查找和刪除值的范圍。 您還可以單擊工作表選項卡以選擇整個工作表。
4. 彈出如下圖的對話框,告訴你代碼已經刪除了指定的匹配項。 點擊 OK
關閉對話框。
5. 指定的值已被一次性刪除。
使用“選擇特定單元格”功能一次查找和刪除多個匹配項
Kutools for Excel 提供 選擇特定的單元格 一次查找滿足您設置的一個或兩個條件的值的功能,請繼續閱讀以了解如何一次快速查找和刪除多個值。
1。 在 Kutools 標簽,在 編輯 組,點擊 選擇 > 選擇特定的單元格
.
2.在彈出窗口中 選擇特定的單元格 對話框,請執行以下操作:
在 選擇此范圍內的單元格 框,單擊范圍選擇按鈕 在右側指定范圍 在哪里查找和刪除值. 請注意: 要搜索整個工作表,請單擊工作表選項卡。
在 選擇類型 部分,選擇 手機 選項。
在 特定類型 部分,最多設置兩個條件:
點擊左側的下拉箭頭,選擇您需要的關系,例如 包含, 等于, 小于, 開始于等等。
根據需要在相應框中鍵入值。
指定兩個條件之間的關系(如果有): 和 or Or.
3。 點擊 Ok
選擇滿足您設置的條件的單元格。 將彈出一個對話框,告訴您找到并選擇了多少個單元格。
4。 點擊 OK. 現在,按 刪除
鍵一次刪除選定的值。
請注意: 要使用 選擇特定的單元格 功能,你應該有 Kutools for Excel 安裝在您的計算機中。 如果你沒有 Kutools 安裝后, 點擊這里下載并安裝. 專業的 Excel 插件提供 30 天免費試用,沒有任何限制。
在 Excel 中一次查找和刪除多個匹配項
相關文章
在Excel中查找,突出顯示,過濾,計數,刪除重復項
在Excel中,當我們手動記錄數據,從其他來源復制數據或出于其他原因而重復出現數據。 有時,重復是必要且有用的。 但是,有時重復的值會導致錯誤或誤解。 本文將介紹在Excel中通過公式,條件格式設置規則,第三方加載項等快速識別,突出顯示,篩選,計數,刪除重復項的方法。
如何在 Excel 中比較兩列并刪除匹配項?
如果您有兩列/列表,其中包括一些重復項,現在您要比較它們并找出匹配項,然后將其刪除,如何快速解決? 在本文中,我介紹了多種方法來幫助您在Excel中進行處理。
如何在 Excel 中刪除除選定范圍之外的所有范圍?
在Excel中,我們可以快速直接刪除選定的范圍,但是您是否嘗試過刪除選定范圍以外的其他單元格內容? 本文,我將為您介紹一些技巧,以幫助您快速輕松地解決Excel中的此任務。
如何刪除一系列單元格中的所有圖片?
如果現在在工作表中填充了多張圖片,您想在指定范圍內刪除其中的一些圖片,如何快速處理?
最佳辦公生產力工具
將小時轉化為分鐘 Kutools for Excel!
準備好增強您的 Excel 任務了嗎? 利用的力量 Kutools for Excel - 您終極的節省時間的工具。 簡化復雜的任務并像專業人士一樣瀏覽數據。 以閃電般的速度體驗 Excel!
為什么需要 Kutools for Excel
??? 超過 300 項強大功能: Kutools 包含 300 多項高級功能,可簡化您在 1500 多種場景中的工作。

?? 卓越的數據處理能力:合并單元格、刪除重復項并執行高級數據轉換 - 所有這些都不費吹灰之力!
?? 高效的批量操作:當你可以聰明地工作時,為什么還要付出額外的努力呢? 輕松批量導入、導出、組合和調整數據。
?? 可定制的圖表和報告:訪問各種附加圖表并生成富有洞察力的報告。
??? 強大的導航窗格:通過強大的列管理器、工作表管理器和自定義收藏夾獲得優勢。
?? 七種類型的下拉列表:通過各種功能和類型的下拉列表使數據輸入變得輕而易舉。
?? 用戶友好:對于初學者來說輕而易舉,對于專家來說是一個強大的工具。
立即下載,與 Excel 一起穿越時空!
閱讀更多
免費下載... 采購...
Office Tab 為 Office 帶來選項卡式界面,讓您的工作更輕松
在Word,Excel,PowerPoint中啟用選項卡式編輯和閱讀,發布者,Access,Visio和Project。
在同一窗口的新選項卡中而不是在新窗口中打開并創建多個文檔。
每天將您的工作效率提高50%,并減少數百次鼠標單擊!