|
发表于 2015-11-17 13:33
|
显示全部楼层
本楼为最佳答案
- Sub tt()
- arr = Sheet1.Range("a1:a" & Sheet1.[a65536].End(3).Row)
- ReDim brr(1 To UBound(arr), 1 To 1000)
- brr(1, 1) = "的中间处理过程"
- Set d = CreateObject("scripting.dictionary")
- For i = 2 To UBound(arr)
- x = arr(i, 1)
- xrr = Split(x, ";")
- a = InStr(xrr(0), ":")
- If a > 0 Then
- brr(i, 1) = Left(x, a - 8)
- xrr(0) = Mid(xrr(0), a + 1)
- End If
-
- For k = 0 To UBound(xrr)
- a = InStr(xrr(k), ":")
- If a > 1 Then
- gc = Left(xrr(k), a - 1) '过程
- If Not d.exists(gc) Then
- c = c + 1
- d(gc) = c + 1
- brr(1, d(gc)) = gc
- End If
- brr(i, d(gc)) = Mid(xrr(k), a + 1)
- End If
- Next
- Next
- Sheet2.Cells.ClearContents
- Sheet2.[b1].Resize(UBound(arr), c) = brr
- End Sub
复制代码 |
|