为了方便把数据表放到一个工作簿
不知道求和数据表的H列还是I 还是 J,暂定H
另外本身数据里面是不是就没有符合要求的啊,还是我写错了???结果全是0
我自己加了两个测试又可以,不懂你这数据能不能用
- Sub 求和()
- Dim 数据, 字典, 条件, i%, 结果
- 数据 = Sheet2.Range("B2").CurrentRegion
- 条件 = Sheet1.Range("B2").CurrentRegion
- Set 字典 = CreateObject("Scripting.Dictionary")
- For i = 2 To UBound(条件)
- 字典(条件(i, 1) & 条件(i, 3) & 条件(i, 4)) = 0
- Next
- For i = 2 To UBound(数据)
- If 字典.Exists(数据(i, 2) & 数据(i, 4) & 数据(i, 5)) Then
- 字典(数据(i, 2) & 数据(i, 4) & 数据(i, 5)) = 字典(数据(i, 2) & 数据(i, 4) & 数据(i, 5)) + 数据(i, 7)
- End If
- Next
- 结果 = 字典.Items
- [k3].Resize(字典.Count, 1) = Application.Transpose(结果)
- End Sub
复制代码
|