|
楼主 |
发表于 2016-2-26 16:41
|
显示全部楼层
本帖最后由 icenotcool 于 2016-2-26 20:12 编辑
grf1973 发表于 2016-2-26 11:15
右边的数据是原公式结果,供比较。
老师可以看看我的这个语句出问题在哪儿吗?问题已经解决
Sub 求和()
Dim sh As Worksheet
arr = Range("b2:b" & [b65536].End(2).Row)
ReDim brr(1 To UBound(arr), 1 To 4)
Set d = CreateObject("scripting.dictionary")
For i = 1 To UBound(arr)
d(arr(i, 1)) = i
Next
For Each sh In Worksheets
If sh.Name Like "*5年*月" Then
crr = sh.Range("a3:ac" & sh.[a65536].End(3).Row)
For k = 1 To UBound(crr)
i = d(crr(k, 1))
If i > 0 Then
brr(i, 1) = brr(i, 1) + crr(k, 7)
brr(i, 2) = brr(i, 2) + crr(k, 8)
brr(i, 3) = brr(i, 3) + crr(k, 9)
brr(i, 4) = brr(i, 4) + crr(k, 10)
End If
Next
End If
Next
Range("E2").Resize(UBound(brr), 4) = brr
End Sub
|
|