- Sub 汇总()
- Dim arr, i&, j&, Tj, x, d, n&, p&, brr
- Set d = CreateObject("scripting.dictionary")
- Tj = [h2]
- arr = Sheets(1).[a1].CurrentRegion
- ReDim brr(1 To UBound(arr), 1 To 9)
- For i = 2 To UBound(arr)
- x = arr(i, 2)
- If x = Tj Then
- x = arr(i, 2) & arr(i, 3)
- If Not d.exists(x) Then
- n = n + 1
- d(x) = n
- brr(n, 1) = n: brr(n, 2) = arr(i, 3)
- brr(n, 3) = "": brr(n, 4) = arr(i, 17)
- brr(n, 5) = arr(i, 11): brr(n, 6) = arr(i, 12)
- brr(n, 7) = arr(i, 14): brr(n, 8) = arr(i, 13): brr(n, 9) = Val(arr(i, 19))
- Else
- p = d(x)
- brr(p, 5) = brr(p, 5) + arr(i, 11): brr(p, 6) = brr(p, 6) + arr(i, 12)
- brr(p, 7) = brr(p, 7) + arr(i, 14): brr(p, 8) = brr(p, 8) + arr(i, 13)
- brr(p, 9) = brr(p, 9) + Val(arr(i, 19))
- End If
- End If
- Next
- [a4:i10000].ClearContents
- [a4].Resize(n, 9) = brr
- End Sub
复制代码 |