|
|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
本帖最后由 LMY123 于 2018-8-17 15:20 编辑
分表分别分类汇总,再横向合并在总表上
Sub 同薄多表汇总()
Dim arr, brr(1 To 65530, 1 To 2), i&, j&, m&, d As Object
Set d = CreateObject("scripting.dictionary")
For j = 2 To 3
arr = Sheets(j).[a1].CurrentRegion
For i = 3 To UBound(arr)
If Not d.Exists(arr(i, 11)) Then
m = m + 1
d(arr(i, 11)) = m
brr(m, 1) = arr(i, 11)
brr(m, 2) = arr(i, 12)
Else
brr(d(arr(i, 11)), 2) = brr(d(arr(i, 11)), 2) + arr(i, 12)
End If
Next i
Next j
Range("B4:D65536").ClearContents
[b4].Resize(m, 2) = brr
End Sub
|
|