- Sub 量()
- Dim dic, r, rng, k, r1, s, t, n
- rng = Sheets("原表").[a1].CurrentRegion
- Set dic = CreateObject("scripting.dictionary")
- For r = 2 To UBound(rng)
- If dic.Exists(rng(r, 5)) = False Then
- k = 1 + k
- dic(rng(r, 5)) = rng(r, 8) & "[" & k & "[" & rng(r, 2) & "[" & rng(r, 3) & "[" & rng(r, 4) & "[" & rng(r, 5) & "[" & rng(r, 6) & "[" & rng(r, 7)
- Else
- dic(rng(r, 5)) = dic(rng(r, 5)) & "[" & rng(r, 6) & "[" & rng(r, 7)
- End If
- Next r
- t = dic.items
- r1 = Sheet2.Cells(Rows.Count, 1).End(3).Row + 1
- For s = 1 To dic.Count
- Sheet2.Cells(r1, 20) = Split(t(s - 1), "[")(0)
- For n = 1 To 19
- On Error Resume Next
- Sheet2.Cells(r1, n) = Split(t(s - 1), "[")(n)
- Next n
- r1 = r1 + 1
- Next s
- Set dic = Nothing
- End Sub
复制代码 |