|
- Sub test()
- Dim r%, i%
- Dim arr, brr
- Dim ws As Worksheet
- Dim d As Object
- Set d = CreateObject("scripting.dictionary")
- For Each ws In Worksheets
- If ws.Name <> "汇总" Then
- With ws
- r = .Cells(.Rows.Count, 1).End(xlUp).Row
- arr = .Range("a3:c" & r)
- For i = 1 To UBound(arr)
- If Len(arr(i, 1)) <> 0 And arr(i, 1) <> "合计" Then
- n = Application.Match(arr(i, 2), Array("福海店", "顺发店", "长光店"), 0)
- If Not IsError(n) Then
- If Not d.exists(arr(i, 1)) Then
- ReDim brr(1 To 5)
- brr(1) = arr(i, 1)
- Else
- brr = d(arr(i, 1))
- End If
- brr(n + 1) = brr(n + 1) + arr(i, 3)
- d(arr(i, 1)) = brr
- End If
- End If
- Next
- End With
- End If
- Next
- brr = Application.Transpose(Application.Transpose(d.items))
- For i = 1 To UBound(brr)
- For j = 2 To 4
- brr(i, 5) = brr(i, 5) + brr(i, j)
- Next
- Next
- With Worksheets("汇总")
- .UsedRange.Offset(2, 0).Clear
- With .Range("a3").Resize(UBound(brr), UBound(brr, 2))
- .Value = brr
- .Borders.LineStyle = xlContinuous
- End With
-
- End With
- End Sub
复制代码 |
|