在之前https://ask.csdn.net/questions/7466946?expend=true的提问中,我已经知道怎么让文字满一定字数就自动换到下个单元格,但是该vba使用时,如果下方也有文字,就会覆盖下方的文字,而不是下方的文字也会分段到下一格,并且如果上方的是15个字,那么下方那很多的字就不会再分,
所以我想问下,如何在能够2段长文字在上下相邻的2个单元格的时候,以及上方为15个字的时候,也能够让文字满一定字数就自动换到下个单元格?最好列宽为32,字数为15为例。顺便想问下,之前的语句中,如何让多个或者所有列都能换单元格?

excel如何让文字满一定字数就自动换到下个单元格并且不会覆盖或者上面符合vba就用不了?
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
3条回答 默认 最新
- soar3033 2021-07-08 14:16关注
运行前:
运行后:
代码:
Sub aa() n = 2 '第几列 r = Range("A65536").End(xlUp).Row i = 1 Do While i <= r l = Len(Cells(i, n).Value) If l > 15 Then k = i & ":" & i Range(k).Select Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove Cells(i, n).Value = Left(Cells(i + 1, n).Value, 15) Cells(i + 1, n).Value = Right(Cells(i + 1, n).Value, l - 15) r = r + 1 End If i = i + 1 Loop End Sub
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 1无用