我已经搜索了一段时间,但没有真正找到答案,所以我想发布一下。
我实际上不能编写任何代码,但我尝试使用以下内容:
Sub DeleteDuplicate()
Dim current As String
ActiveSheet.Range("A1").Activate
Do While ActiveCell.Value <> ""
current = ActiveCell.Address
ActiveCell.Offset(1, 0).Activate
Do While ActiveCell.Value <> ""
If (ActiveSheet.Range(current).Value = ActiveCell.Value) And (ActiveSheet.Range(current).Offset(0, 2).Value = ActiveCell.Offset(0, 2).Value) And (ActiveSheet.Range(current).Offset(0, 3).Value = ActiveCell.Offset(0, 3).Value) Then
ActiveSheet.Rows(ActiveCell.Row).Delete
Else
ActiveCell.Offset(1, 0).Activate
End If
Loop
ActiveSheet.Range(current).Offset(1, 0).Activate
Loop
End Sub
基本上,使用我上面链接的例子,这意味着遍历列中的整行,如果有整行相同,则删除其中一个重复项。
我想知道当数据不是 3 列而是大约 18 列和 10,0000 行时,是否有更好的方法来实现这一点。
答案1
没必要重新发明轮子。
数据 > 删除重复项 > 选择要比较的列 > 确定