|
你试试:
- Sub test()
- Dim r%, i%
- Dim arr, brr
- Dim d As Object
- Set d = CreateObject("scripting.dictionary")
- With Worksheets("2月份录入表")
- r = .Cells(.Rows.Count, 1).End(xlUp).Row
- arr = .Range("a2:o" & r)
- For i = 1 To UBound(arr)
- If Not d.exists(arr(i, 1)) Then
- ReDim brr(1 To 2)
- Else
-
- brr = d(arr(i, 1))
- End If
- brr(1) = brr(1) + arr(i, 14)
- brr(2) = brr(2) + arr(i, 15)
- d(arr(i, 1)) = brr
- Next
- End With
- For Each sh In Sheets
- If InStr(sh.Name, "统计表") Then
- With sh
- r = .Cells(.Rows.Count, 1).End(xlUp).Row
- arr = .Range("b2:b" & r)
- ReDim crr(1 To UBound(arr), 1 To 2)
- For i = 1 To UBound(arr)
- If d.exists(arr(i, 1)) And arr(i, 1) <> "" Then
- a = a + 1
- brr = d(arr(i, 1))
- crr(a, 1) = brr(1)
- crr(a, 2) = brr(2)
- End If
- Next
- .Range("H2").Resize(a, 2) = crr
- End With
- Exit For
- End If
- Next
- End Sub
复制代码 |
|