|
- Sub 瞎折腾()
- Dim vData As Variant, iRow As Integer, iCol As Integer, vFill As Variant
-
- Application.ScreenUpdating = False
- iRow = Sheet1.UsedRange.Rows.Count
- iCol = [B4].CurrentRegion.Columns.Count
- vData = [B4].Offset(0, -1).Resize(iRow - 3, iCol).Value
- Rows("4:" & iRow).Delete
- If vData(2, 1) = "" Then
- ReDim vFill(1 To UBound(vData) / 2, 1 To iCol)
- For iRow = 1 To UBound(vData) / 2
- For iCol = 1 To UBound(vData, 2)
- vFill(iRow, iCol) = vData(iRow * 2 - 1, iCol)
- vFill(iRow, iCol) = vFill(iRow, iCol) & Chr(10) & vData(iRow * 2, iCol)
- Next
- Next
- Else
- ReDim vFill(1 To UBound(vData) * 2, 1 To iCol)
- For iRow = 1 To UBound(vData)
- For iCol = 1 To UBound(vData, 2)
- If Not IsEmpty(vData(iRow, iCol)) Then
- vData(iRow, iCol) = Split(vData(iRow, iCol), Chr(10))
- vFill(iRow * 2 - 1, iCol) = vData(iRow, iCol)(0)
- If UBound(vData(iRow, iCol)) = 1 Then vFill(iRow * 2, iCol) = vData(iRow, iCol)(1)
- End If
- Next
- Next
- End If
- [B4].Offset(0, -1).Resize(UBound(vFill), UBound(vFill, 2)) = vFill
- If UBound(vData) < UBound(vFill) Then
- For iRow = 1 To UBound(vFill) / 2
- Cells(iRow * 2 + 2, 1).Resize(2, 1).Merge
- Next
- End If
- Rows.AutoFit
- Application.ScreenUpdating = True
- End Sub
复制代码 |
评分
-
1
查看全部评分
-
|