可以任何人提供宏或VBA代码或想法如何开始... 我在下面发布了一个例子..但在Real我的EXL表格很大..
我的专栏中有什么: 1 2 3 4 4 4 4 4 4 4 4 4 4 4 4 3 4 3 4 4 4 五 五 3 4 4 3 4 4 4 2 3 4 4 4 4 4 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 3
我需要的结果
1 2 3 4 3 4 3 4 五 3 4 3 4 2 3 4
我想要的只是删除行
答案 0 :(得分:0)
在一个范围的每个单元格上循环,并检查单元格(A,i)和单元格(A,i-1)的值是否与我是迭代器的位置相同。
答案 1 :(得分:0)
我相信这就是你要找的东西。
它将下一行的值与所选行的值进行比较,如果两个值相同,则删除整个下一行。
请注意,列表不应包含任何空白单元格。
Public Sub DeleteDuplicateRows()
On Error GoTo ErrProc
Do Until IsEmpty(ActiveCell)
With ActiveCell
'Compare next row value against selected row value
If .Offset(1, 0).Value <> .Value Then
'Value not the same - jump to it
.Offset(1, 0).Select
Else
'Value the same - delete entire next row
.Offset(1, 0).EntireRow.Delete xlShiftUp
End If
End With
Loop
Leave:
On Error GoTo 0
Exit Sub
ErrProc:
MsgBox Err.Description
Resume Leave
End Sub
编辑:
Public Sub DeleteDuplicateRows()
On Error GoTo ErrProc
Do Until IsEmpty(ActiveCell)
With ActiveCell
If .Offset(1, 0).Value = .Value And .Offset(1, 1).Value = 0 Then
.Offset(1, 0).EntireRow.Delete xlShiftUp
Else
.Offset(1, 0).Select
End If
End With
Loop
Leave:
On Error GoTo 0
Exit Sub
ErrProc:
MsgBox Err.Description
Resume Leave
End Sub