|
本帖最后由 mathking77 于 2016-8-30 08:59 编辑
用字典可以- Sub xhflhz()
- Dim arr, d1 As Object, d2 As Object, d3 As Object, i&
- Set d1 = CreateObject("scripting.dictionary")
- Set d2 = CreateObject("scripting.dictionary")
- Set d3 = CreateObject("scripting.dictionary")
- arr = [a1].CurrentRegion
- For i = 2 To UBound(arr)
- d1(arr(i, 3)) = d1(arr(i, 3)) + arr(i, 4)
- d2(arr(i, 3)) = d2(arr(i, 3)) + arr(i, 5)
- d3(arr(i, 3)) = d3(arr(i, 3)) + arr(i, 6)
- [O2].Resize(d1.Count, 4) = Application.Transpose(Array(d1.keys, d1.items, d2.items, d3.items))
- Next
- End Sub
- Sub khflhz()
- Dim arr, d1 As Object, d2 As Object, d3 As Object, i&
- Set d1 = CreateObject("scripting.dictionary")
- Set d2 = CreateObject("scripting.dictionary")
- Set d3 = CreateObject("scripting.dictionary")
- arr = [a1].CurrentRegion
- For i = 2 To UBound(arr)
- d1(arr(i, 1)) = d1(arr(i, 1)) + arr(i, 4)
- d2(arr(i, 1)) = d2(arr(i, 1)) + arr(i, 5)
- d3(arr(i, 1)) = d3(arr(i, 1)) + arr(i, 6)
- [T2].Resize(d1.Count, 4) = Application.Transpose(Array(d1.keys, d1.items, d2.items, d3.items))
- Next
- End Sub
复制代码 |
|