参考代码
- Sub demo()
- Dim res()
- wei = Array(7, 4, 3)
- Set cel = [a1].CurrentRegion
- arr = cel.Value
- lst = UBound(arr)
- n = 1
- For i = 2 To lst
- pac = Split(arr(i, 2), "-")
- pno = 1
- For j = 0 To 2
- For r = 1 To arr(i, 7 + j)
- ReDim Preserve res(1 To 6, 1 To n)
- For k = 1 To 5
- If k = 2 Then
- pac(UBound(pac)) = pno
- pno = pno + 1
- res(k, n) = Join(pac, "-")
- Else
- res(k, n) = arr(i, k)
- End If
- Next
- res(6, n) = wei(j)
- n = n + 1
- Next
- Next
- Next
- Range("K:AA").Clear
- [K1].Resize(1, 6).Value = Array("省份", "包号", "人", "电话", "辅助字符", "包号重量")
- [K2].Resize(n - 1, 6).Value = Application.Transpose(res)
- End Sub
复制代码 |