【问题标题】:Separate cell text to one word per line将单元格文本分隔为每行一个单词
【发布时间】:2020-09-29 12:58:49
【问题描述】:

如何将一行中的一系列单元格 (B2:CT2) 转换为每行一个单词(在同一单元格中)?

我有将列扩展的代码,但它将所有文本推送到一行,所以它太长了。

Sub AutoFitWrappedText()
    With Range("B2:CT2").EntireColumn
        .ColumnWidth = 255 ' maximum width
        .AutoFit
    End With
End Sub

示例单元格:狗和猫

它的样子:

Do

g

an

cat

我的目标:

Dog

and

Cat

【问题讨论】:

    标签: excel vba


    【解决方案1】:

    可以使用公式。确保启用了自动换行。

    =SUBSTITUTE("DOG AND CAT", " ", CHAR(10))

    VBA:

    Sub Test()
    
        With ThisWorkbook.Worksheets("Sheet1").Range("B:CT")
            .Replace What:=" ", Replacement:=vbCrLf, LookAt:=xlPart, _
                     SearchOrder:=xlByRows, MatchCase:=False
            .WrapText = True
        End With
    
    End Sub
    

    【讨论】:

    • 任何与 VBA 相关的内容,单元格不能采用硬编码的条形公式
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-21
    • 2018-04-15
    • 1970-01-01
    • 2018-06-09
    相关资源
    最近更新 更多