|
发表于 2013-2-26 18:26
|
显示全部楼层
本楼为最佳答案
- Sub 去重复行()
- Dim iLastRow&
- Dim i&, j&
- Dim arrTemp, arr
- Dim str$
- Dim dic As Object
- Dim keys, items
- Set dic = CreateObject("scripting.dictionary")
- With Worksheets("Sheet2")
- arr = .Range("a1").CurrentRegion
- For i = 2 To UBound(arr)
- arrTemp = WorksheetFunction.Index(arr, i, 0)
- 'Stop
- dic(Join(arrTemp, "#")) = ""
- Next
- End With
-
- arr = Range("a12").CurrentRegion.Value
- Application.ScreenUpdating = False
-
- For i = UBound(arr) To 2 Step -1
- arrTemp = WorksheetFunction.Index(arr, i, 0)
- str = Join(arrTemp, "#")
- If dic.Exists(str) Then
- Rows(11 + i).Delete
- j = j + 1
- End If
- Next
- Application.ScreenUpdating = True
- If j > 0 Then MsgBox "一共删除了 " & j & " 条重复行"
- End Sub
复制代码 |
|