参与一下。。。
- Sub 拆分多勾机手2() '//2024.4.15
- With Sheets("汇总表")
- r = .Range("a1").End(xlDown).Row '取R列
- arr = .[a1].Resize(r, 24)
- zrr = .[a1].Resize(r, 24)
- ReDim brr(1 To 10000, 1 To UBound(arr, 2))
- On Error Resume Next
- For i = 2 To 23 'UBound(arr) '//确认无误后,23改为UBound(arr)即可.
- If arr(i, 1) <> Empty Then
- For j = 17 To 18
- If InStr(arr(i, j), "、") Then
- m = m + 1
- For k = 1 To 16
- brr(m, k) = arr(i, k)
- Next
- c1 = 22
- brr(m, 21) = arr(i, 21): brr(m, c1) = arr(i, c1)
- p = arr(i, c1) '//孔深
- n = UBound(b) + 1 '//人数
- p1 = Round(p / n, 2) '//孔深拆分
- b = Split(arr(i, j), "、")
- For x = 0 To UBound(b)
- m = m + 1
- For k = 1 To 16
- brr(m, k) = arr(i, k)
- Next
- brr(m, j) = b(x)
- brr(m, j + 6) = p1
- Next
- End If
- Next
- End If
- Next
- .[a26].Resize(m, 24) = brr '//数据暂写在26行开始的地方,确认无误后,.[a26]改为.[a2]即可.
- .[a1].Select
- End With
- MsgBox "拆分勾机手完成!"
- End Sub
复制代码
|