|
如何顺速的将左边的数据按日期,按客户名称进行汇总。我这里只列示几天的数据,实际上一个月下来有几万条数据。请高手帮助一下。谢谢。
- Sub aa()
- Dim arr2, arr, arr1(1 To 1000, 1 To 4), x, y, z, k, D, m
- Set D = CreateObject("Scripting.Dictionary")
- arr2 = Range("c" & Range("c65536").End(xlUp).Row & ":d" & Range("c65536").End(xlUp).Row)
- arr = Range("a2:d" & Range("a65536").End(xlUp).Row)
- Range("F1:I10000").ClearContents
- For x = 1 To UBound(arr)
- If D.Exists(arr(x, 2)) Then
- y = D(arr(x, 2))
- arr1(y, 1) = arr(x, 1)
- arr1(y, 2) = arr(x, 2)
- arr1(y, 3) = arr1(y, 3) + arr(x, 3)
- arr1(y, 4) = arr1(y, 4) + arr(x, 4)
- Else
- k = k + 1
- D(arr(x, 2)) = k
- For z = 1 To 4
- arr1(k, z) = arr(x, z)
- Next z
- End If
- Next x
- Range("f3").Resize(D.Count, 4) = arr1
- m = 3 + D.Count
- Range("f" & m) = "小计"
- Range("f" & m & ":g" & m).MergeCells = True
- Range("h" & m & ":i" & m) = arr2
- End Sub
复制代码
新建 Microsoft Office Excel 97-2003 工作表 (3).rar
(10.23 KB, 下载次数: 39)
|
|