我有2列。一個有400個元素,另一個有600個元素。第二個列表中的600個元素中有400個在第一個列表中。我想刪除所有這些,並最終得到200個元素列表。刪除兩列中的常見元素
設置差異。
我如何在Excel中實現這個功能?
我有2列。一個有400個元素,另一個有600個元素。第二個列表中的600個元素中有400個在第一個列表中。我想刪除所有這些,並最終得到200個元素列表。刪除兩列中的常見元素
設置差異。
我如何在Excel中實現這個功能?
假設你的 「400」 名單中列A
(表 「realizada」),並在列B
「600」 名單(表 「completa」):
Sub test()
Dim lastrow As Long
Dim rngToDel As Range, c As Range
Dim rng As Range
Set rng = ThisWorkbook.Worksheets("realizada").Range("A:A")
With ThisWorkbook.Worksheets("completa")
lastrow = .Cells(.Rows.Count, "B").End(xlUp).Row
For Each c In .Range("B1:B" & lastrow)
If Not IsError(Application.Match(c.Value, rng, 0)) Then
If rngToDel Is Nothing Then
Set rngToDel = c
Else
Set rngToDel = Union(rngToDel, c)
End If
End If
Next
End With
rngToDel.Select
If Not rngToDel Is Nothing Then rngToDel.Delete Shift:=xlShiftUp
End Sub
這兩列有兩張不同的圖表,列表A被稱爲realizada,有400個元素,列表B被稱爲completa並具有600個元素。我需要使用realizada的數據清理'completa',我如何修改你的代碼以適應這種情況。它似乎只適用於同一張表中的列。 – OHHH
看到我更新的答案 –
所以,你要 「乾淨」 的大清單? –
是的,我們有2個列表。一個有地方參觀,另一個有我們已經去過的地方。他們在一本excel書籍的兩個不同頁面上,我們想從我們仍然需要訪問的地方列表中刪除我們已經訪問過的所有地方。如果這聽起來很愚蠢,我很抱歉。 – OHHH