yah760911 发表于 2012-6-5 08:30
赵老师,只加总:"J"列与"L"列,其它的为固定的. - Sub Macro1()
- Dim arr, d As Object, i&, j&, m&, s$
- Set d = CreateObject("scripting.dictionary")
- arr = Range("A1").CurrentRegion
- m = 1
- For i = 2 To UBound(arr)
- s = arr(i, 4) & arr(i, 5) & arr(i, 6)
- t = d(s)
- If t = "" Then
- m = m + 1
- d(s) = m
- arr(m, 1) = m - 1
- For j = 2 To UBound(arr, 2)
- arr(m, j) = arr(i, j)
- Next
- Else
- arr(t, 10) = arr(t, 10) + arr(i, 10)
- arr(t, 12) = arr(t, 12) + arr(i, 12)
- End If
- Next
- With Sheets("Sheet2") '写到Sheet2
- .Cells.ClearContents
- .[a1].Resize(m, j - 1) = arr
- End With
- End Sub
复制代码 |