如果任何单词立即在同一列(E列)中重复但在其他行中,我正在尝试编写一个vba代码来删除一行。如果发生这种情况,要删除的行就是另一个。请按照下面的示例。在这种情况下,要删除的行是:E6,E10和E15。
表单的名称是test。列和F和G无关。
非常感谢!
编辑以添加评论中的代码:
Sub delete_duplicates_column_E()
With Sheets("test").Range("A:E")
.Value = .Value
.RemoveDuplicates Columns:=5, Header:=xlYes
End With
End Sub
答案 0 :(得分:0)
刚刚掀起了这个,试试吧:
Sub removeDuplicates()
Range("E2").Select
Do Until ActiveCell.Value = ""
If ActiveCell.Value = ActiveCell.Offset(1).Value Then
ActiveCell.EntireRow.Delete (xlShiftUp)
End If
ActiveCell.Offset(1).Select
Loop
End Sub
答案 1 :(得分:0)
删除行时最好循环回病房:
Sub delete_duplicates_column_E()
Dim ws As Worksheet
Dim lastrow As Long
Dim i As Long
Set ws = Sheets("test")
With ws
lastrow = .Range("E" & .Rows.Count).End(xlUp).Row
For i = lastrow To 2 Step -1
If .Cells(i, 5) = .Cells(i + 1, 5) Then
.Rows(i).Delete
End If
Next i
End With
End Sub