- Sub x()
- Dim sh As Worksheet, x%, d, ar, br(1 To 65500, 1 To 3), k%, r%
- Set d = CreateObject("scripting.dictionary")
- For Each sh In Sheets
- If sh.Name <> "合计数" Then
- ar = sh.Range("a1").CurrentRegion
- For x = 2 To UBound(ar)
- If d(ar(x, 1)) = "" Then
- k = k + 1: d(ar(x, 1)) = k
- br(k, 1) = ar(x, 1)
- br(k, 2) = ar(x, 2)
- br(k, 3) = ar(x, 3)
- Else
- r = d(ar(x, 1))
- br(r, 2) = br(r, 2) + ar(x, 2)
- br(r, 3) = br(r, 3) + ar(x, 3)
- End If
- Next
- End If
- Next
- Range("a2:c65500").ClearContents
- Range("a2").Resize(k, 3) = br
- MsgBox "汇总完毕"
- End Sub
复制代码 |