|
Private Sub CommandButton1_Click()
Dim d As Object, arr, ar
Set d = CreateObject("scripting.dictionary")
arr = Sheet1.Range("c4:e" & Sheet1.Cells(Rows.Count, 1).End(xlUp).Row)
For i = 1 To UBound(arr)
If arr(i, 2) <> "是" Then
If Not d.exists(arr(i, 1)) Then
d(arr(i, 1)) = Array(arr(i, 3))
Else
ar = d(arr(i, 1))
ReDim Preserve ar(0 To UBound(ar) + 1)
ar(UBound(ar)) = arr(i, 3)
d(arr(i, 1)) = ar
End If
End If
Next
For i = 0 To d.Count - 1
arr1 = d(d.keys()(i))
ReDim arr2(0 To UBound(arr1))
For k = 1 To UBound(arr1) + 1
arr2(k - 1) = Application.Large(arr1, k)
Next
For j = 0 To UBound(arr2)
n = n + 1
If Sheet1.Cells(n + 3, 4) <> "是" Then
Sheet1.Cells(n + 3, 6) = Application.Match(Val(Sheet1.Cells(n + 3, 5).Value), arr2, 0)
Else
n = n + 1
Sheet1.Cells(n + 3, 6) = Application.Match(Val(Sheet1.Cells(n + 3, 5).Value), arr2, 0)
End If
Next
Next
End Sub
|
|