|
发表于 2016-4-17 12:13
|
显示全部楼层
本楼为最佳答案
Sub test()
Dim A, B, d1, i, j, c, str
Set d1 = CreateObject("scripting.dictionary")
Set d2 = CreateObject("scripting.dictionary")
For j = 2 To 3
A = Sheets(j).UsedRange: c = UBound(A, 2)
For i = 1 To UBound(A)
d1(A(i, c - 1)) = d1(A(i, c - 1)) & A(i, c)
d2(A(i, c - 1)) = d2(A(i, c - 1)) & ", " & A(i, 1)
Next i
Next j
Sheets(1).Activate
A = Range("b3").CurrentRegion
For i = 2 To UBound(A)
A(i, 2) = 0
str = d1(A(i, 1))
str = VBA.Replace(str, "块", ",")
str = VBA.Replace(str, "套", ",")
B = VBA.Split(str, ",")
For j = 0 To UBound(B) - 1
A(i, 2) = A(i, 2) + B(j)
Next j
A(i, 3) = Mid(d2(A(i, 1)), 3)
Next i
[b3].Resize(UBound(A), UBound(A, 2)) = A
End Sub
求助4.rar
(13.21 KB, 下载次数: 20)
|
|