|
Option Explicit
Sub TEST0()
Dim ar, br, cr, i&, j&, dic(1) As New Dictionary, vKey
Application.ScreenUpdating = False
ar = Sheets("Sheet1").[A1].CurrentRegion.Value
For i = 2 To UBound(ar)
If Len(ar(i, 3)) Then
dic(0)(ar(i, 4)) = dic(0)(ar(i, 4)) & " " & i
End If
Next i
On Error Resume Next
For Each vKey In dic(0).keys
dic(1).RemoveAll
cr = Split(dic(0)(vKey))
For i = 1 To UBound(cr)
dic(1)(ar(cr(i), 3)) = dic(1)(ar(cr(i), 3)) + 1
Next i
With Sheets(vKey)
With .[A1].CurrentRegion
br = .Value
For i = 2 To UBound(br)
br(i, 2) = dic(1)(br(i, 1))
Next i
.Value = br
End With
End With
Next
Erase dic
Application.ScreenUpdating = True
Beep
End Sub
|
评分
-
1
查看全部评分
-
|