|
发表于 2013-4-13 14:42
|
显示全部楼层
本楼为最佳答案
- Sub test()
- Dim arr, brr
- Dim x%, k%
- Dim z As String
- Set d = CreateObject("scripting.dictionary")
- arr = Range("A4:F" & [A65536].End(3).Row)
- ReDim brr(1 To UBound(arr), 1 To 6)
- For x = 1 To UBound(arr)
- z = arr(x, 1) & arr(x, 2) & arr(x, 3) & arr(x, 4) & arr(x, 6)
- If d.exists(z) Then
- brr(d(z), 5) = arr(x, 5) + brr(d(z), 5)
- Else
- k = k + 1
- d(z) = k
- For y = 1 To 6
- brr(k, y) = arr(x, y)
- Next y
- End If
- Next x
- [H6].Resize(k, 6) = brr
- End Sub
复制代码 |
|