我有一个包含多个列的电子表格,我正在考虑根据每行中的值扩展列。
如果行中的值大于列宽,则展开为行值的宽度。
但是,下面的代码会根据一列中的值扩展列,并将宽度设置为所有列。
Dim j As Integer, m As Integer
With tRange.Columns
.AutoFit
m = ActiveCell.Offset(-1, 0).Columns(1).ColumnWidth
For j = 1 To .Columns.Count
If .Columns(j).ColumnWidth > m Then m = .Columns(j).ColumnWidth
Next j
.ColumnWidth = m
End With
有没有办法让列宽基于每列并单独设置宽度而不是全局设置宽度?
希望你知道我的意思!
答案 0 :(得分:0)
要为单个Range
自动设置列,您可以使用Sub
,如下所示:
Option Explicit
Sub Test()
AutoFitRangeColumn Sheet2.Range("B4")
End Sub
Sub AutoFitRangeColumn(ByVal rng As Range)
rng.EntireColumn.AutoFit
End Sub
答案 1 :(得分:0)
用
替换整个代码tRange.Columns.AutoFit
这会将您范围内的每一列(“tRange”)设置为该列的适当大小。