【发布时间】:2021-02-28 09:01:32
【问题描述】:
在我的电子表格中,我尝试水平合并两列中的单元格。合并它们后,我希望它们的总宽度与之前的一列相同。
For i = 16 To 25
With ThisWorkbook.Worksheets(week_sheet_name)
.Rows(i).AutoFit
h = ThisWorkbook.Worksheets(week_sheet_name).Rows(i).RowHeight
.Range("V" & i & ":W" & i).MergeCells = True
.Columns(22).ColumnWidth = 40
.Columns(23).ColumnWidth = 30
.Rows(i).EntireRow.RowHeight = h
End With
Next
在这个循环中,它将行自动调整到完美高度(循环前第 22 列的列宽为 70),之后我将高度保存在变量 h 中并合并第 i 行的单元格 V 和 W。列宽设置为 40 和 30,总和与之前的一列相同。最后一步是应用之前自动调整的行的高度。例如。在一个单元格中,自动调整使其高度为 144,在 makro 之后为 264,这与我自动调整它的数量相同,但单元格宽度仅为 40。
如果我只为一行(没有 for 循环)执行此操作,它会完美运行。 如果我不更改第 22 列的列宽,它也适用于循环,但我需要宽度为 40。
我怎样才能让它工作?
【问题讨论】:
标签: excel vba row-height