|
Sub tt1()
Sheet1.Activate
Set d = CreateObject("scripting.dictionary")
arr = Sheet1.[a1].CurrentRegion
For i = 2 To UBound(arr)
If Not d.exists(arr(i, 1) & "|" & arr(i, 3)) Then
d(arr(i, 1) & "|" & arr(i, 3)) = i
X = arr(i, 18)
ElseIf d.exists(arr(i, 1) & "|" & arr(i, 3)) Then
If arr(i, 18) > X Then
d(arr(i, 1) & "|" & arr(i, 3)) = i
Else
End If
End If
Next
'-------------------------------------------------
xx1 = d.items
Set S = Rows(1)
For i = 0 To UBound(xx1)
Set S = Union(S, Rows(xx1(i)))
Next
'-------------------------------------------------
Sheet3.UsedRange.Clear
S.Copy
Sheet3.[a1].PasteSpecial xlAll
Application.CutCopyMode = False
'-------------------------------------------------
Sheet3.Activate
Set A = Sheet3.[a1].CurrentRegion
A.Sort [c1], 1, , , , , , 1
A.Sort [a1], 1, , , , , , 1
'-------------------------------------------------
End Sub
|
|