参与一下。。。
- Sub ykcbf() '//2024.5.22
- With Sheets("Sheet2")
- r = .Cells(Rows.Count, 1).End(3).Row
- arr = .[a1].Resize(r, 5)
- ReDim brr(1 To 10000, 1 To 5)
- For i = 5 To UBound(arr)
- st = Replace(arr(i, 5), "~", "-")
- If InStr(st, "-") = 0 Then
- m = m + 1
- For j = 1 To UBound(arr, 2)
- brr(m, j) = arr(i, j)
- Next
- Else
- b = Split(st, "-")
- l1 = Val(Mid(b(0), 2))
- l2 = Val(Mid(b(1), 2))
- tp = Left(b(0), 1)
- For x = l1 To l2
- m = m + 1
- For j = 1 To UBound(arr, 2)
- brr(m, j) = arr(i, j)
- Next
- brr(m, 5) = tp & x
- Next
- End If
- Next
- [i2:m10000] = ""
- [i2].Resize(m, 5) = brr
- [i2].Resize(m, 5).Borders.LineStyle = 1
- End With
- MsgBox "OK!"
- End Sub
复制代码
|