需要帮助,我在下面有以下代码:
Dim LRAS, matchFoundIndex, iCntr As Long
LRAS = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
For iCntr = 3 To LRAS
If Cells(iCntr, 1) <> "" Then
matchFoundIndex = WorksheetFunction.Match(Cells(iCntr, 1), Range("A1:A" & LRAS), 0)
If iCntr <> matchFoundIndex Then
Cells(iCntr, 14) = "Duplicate"
'at this point duplicate
End If
End If
Next iCntr
'-----------
Application.Calculation = xlCalculationManual
Application.EnableEvents = False
Application.ScreenUpdating = False
Dim deleteRow As Long
Dim wrksht As Worksheet
Set wrksht = ActiveSheet
For deleteRow = wrksht.Range("N" & Rows.Count).End(xlUp).Row To 3 Step -1
If wrksht.Range("N" & deleteRow).Value = "Duplicate" Then
Rows(deleteRow).EntireRow.Delete
End If
Next deleteRow
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
Application.ScreenUpdating = True
此代码基本上搜索重复值,然后表示值是重复的。下一步是删除第二个重复项。 我希望将此构建集成到一个事件而不是两个单独的事件中。有没有办法做到这一点?或者是否有另一种方法可以根据第一列中的值删除重复的行?
答案 0 :(得分:2)
我认为你需要的只是一个声明:
@Bind
其中Cells.RemoveDuplicates 1
表示第一列1
,其中应检查并删除重复项。
如果键分布在许多列上,例如第1列和第3列,则可以根据这些列删除重复项:
A