Sub CutDuplicates()
Dim Rng As Range, i As Long
Application.ScreenUpdating = False
Set Rng = Range("DH2:DH" & Range("DH" & Rows.Count).End(xlUp).Row)
For i = Rng.Rows.Count To 1 Step -1
If Application.WorksheetFunction.CountIf(Rng, Cells(i, "DH")) > 1 Then
lr = Sheets("Duplicates").Cells(Rows.Count, "DH").End(xlUp).Row + 1
Rows(i).EntireRow.Cut Destination:=Sheets("Duplicates").Range("A" & lr)
Rows(i).EntireRow.Delete
End If
Next i
Application.ScreenUpdating = True
End Sub
这是在50行测试表上测试的,但它也适用于较大的行工作表 .
0
我有一个巨大的数据,删除重复行我使用下面的代码 . 列号和行号始终是动态的 .
Sub DeDupe()
Dim intArray As Variant, i As Integer
Dim rng As Range
Set rng = ActiveSheet.UsedRange.Rows
With rng
ReDim intArray(0 To .Columns.Count - 1)
For i = 0 To UBound(intArray)
intArray(i) = i + 1
Next i
.RemoveDuplicates Columns:=(intArray), Header:=xlYes
End With
End Sub
2 回答
此代码将基于A列在活动工作表上剪切重复行 . 它将剪切行粘贴到名为“Duplicates”的工作表中 .
这是在50行测试表上测试的,但它也适用于较大的行工作表 .
我有一个巨大的数据,删除重复行我使用下面的代码 . 列号和行号始终是动态的 .