网站搜索

Excel 文本换行选项不适用于合并单元格 - 5 个解决方案


该数据集展示引言和相应的作者。每个引文覆盖 3 个单元格,并且文本未完全显示。合并这些单元格后,将文本换行。

问题识别

  • 选择报价(例如B5:D5)。
  • 点击合并并居中。
  • 对齐中选择文本换行

或者,您可以使用设置单元格格式选项(按CTRL + 1打开设置单元格格式对话框) 。转到对齐并选中文本换行合并单元格

这是输出。

注意:您无法合并包含数据集的所有单元格。您必须选择要合并的相邻单元格。

如果您在下面的单元格中重复该过程,您将得到以下输出。

  • 自动调整行高:点击格式中的自动调整行高

您将得到以下输出(自动换行选项对合并的单元格不起作用:第 5、8 和 9 行。


解决方案1 – 手动调整行高列宽

  • 选择任意单元格并转到行号。向下拖动光标。

  • 您还可以通过在格式中选择行高来输入行高。

  • 输入行高:32。

文本换行合并单元格选项都运行良好。

如果您合并了列中的单元格,请调整列宽。


解决方案 2 – 取消合并单元格然后换行

  • 合并并居中中选择取消合并单元格

这是输出。

  • 选择单元格区域并单击文本换行

  • 选择自动调整行高

这是输出。

阅读更多:Excel 自动调整行高以换行


解决方案 3 – 在合并单元格之前更改对齐方式

  • 选择未合并的单元格,然后选择设置单元格格式

  • 转到对齐,然后在水平中选择在选择范围内居中
  • 选中文本换行

  • 自动调整单元格。
  • 这是输出。


解决方案 4 – 插入换行符

  • 将光标放在连字符之前,然后按 ALT + ENTER 插入换行符。

这是输出。

  • 自动调整单元格。


 解决方案 5 – 使用 VBA 代码

  • 单击开发人员> Visual Basic

  • 转到插入> 模块

输入以下代码。

Sub MergeWrap_VBA()
Dim rn As Long, Mrow As Long, ERow As Long, MCol As Long
Dim cn As Long, n As Long, rh As Single, mr As Long
Application.DisplayAlerts = False
Sheets("Using VBA").Copy After:=Sheets(Sheets.Count)
On Error Resume Next
ActiveSheet.Name = "Outupt Using VBA"
Cells().WrapText = True
Rows.AutoFit
MCol = Cells(1, 1).End(xlToRight).Column
Mrow = Cells(Rows.Count, 1).End(xlUp).Row
For rn = Mrow To 2 Step -1
    If Cells(rn, 1).Value = "" Then
        If ERow = 0 Then ERow = rn
       ElseIf ERow > 0 Then
        rh = Rows(r).RowHeight
        n = ERow - rn + 1
        If n > 0 Then Rows(rn & ":" & ERow).RowHeight = h / n
        For cn = 1 To MCol
               For mr = ERow To rn Step -1
                If Cells(mr, cn).Value = "" Then
                       Range(Cells(mr, cn), Cells(mr - 1, cn)).MergeCells = True
                   End If
            Next
        Next
        ERow = 0
    End If
Next
Application.DisplayAlerts = True
With Worksheets("Outupt Using VBA").Columns("B")
 .ColumnWidth = .ColumnWidth * 2
End With
End Sub

变量已声明。该代码将输入的副本生成到新工作表中。 WrapText 被指定为 True 以换行文本。 Range.End 属性用于返回最大列数和行数。 For 循环返回输出。 Column.Width 属性会增加 B 列的宽度。

使用代码时需要更改的内容:

  • 输入活动工作表名称(“使用 VBA”)。
  • 更改输出表:“使用 VBA 输出”。
  • 定义用于换行文本的列。

运行代码(按F5Fn + F5),您将看到以下输出。



相关文章