|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
各位大神,高手们,能不能帮我解析下这个多列条件下求和,就是把每行程序后面注释出来下。这个里面涉及到了字典、数组,由于接触到这个东西时间不是很长再加上平时有点懒惰和忙就没顾得上,最近想学习下数组和字典,麻烦各位大神了!其中这个程序是在网站“看见星光”帮助别人编写的,他的个人是:http://club.excelhome.net/?1871127
- Sub d()
- Dim d As Object, arr, brr, i&, j&, k&
- Set d = CreateObject("scripting.dictionary")
- arr = Sheets("基础数据").[a8].CurrentRegion
- For i = 2 To UBound(arr)
- s = arr(i, 1) & "," & arr(i, 2)
- For j = 3 To 5
- d(s & arr(1, j)) = d(s & arr(1, j)) + arr(i, j)
- Next
- Next
- arr = [a6].CurrentRegion
- For i = 3 To UBound(arr)
- For j = 2 To UBound(arr, 2)
- s = arr(i, 1) & "," & arr(1, j) & arr(2, j)
- If d.exists(s) Then arr(i, j) = d(s)
- Next
- Next
- [a6].CurrentRegion = arr
- Set d = Nothing
- End Sub
|
|