|
Sub test()
Dim dic, arr(), i, j, k, s, ss
Set dic = CreateObject("scripting.dictionary")
arr = Range("a1").CurrentRegion
k = 1
For i = 2 To UBound(arr)
s = arr(i, 2): ss = arr(i, 3)
If Not dic.exists(s) Then Set dic(s) = CreateObject("scripting.dictionary")
If Not dic(s).exists(ss) Then
dic(s)(ss) = arr(i, 4)
Else
dic(s)(ss) = dic(s)(ss) + arr(i, 4)
End If
Next i
For Each a In dic.keys
k = k + 1
Cells(k, 6) = a
Cells(k, 7) = Join(dic(a).keys, ",")
Cells(k, 8) = Evaluate(Join(dic(a).Items, "+"))
Next a
End Sub |
评分
-
1
查看全部评分
-
|