根据其中的数据自动调整列下方的代码,即使仅为包含列名的第一行选择了“范围”。
让我们考虑Sheet具有所需Sheet的句柄。我希望从C到F的列能够自动调整。
Sheet.Range("C1:F1").Columns.AutoFit
参考:https://msdn.microsoft.com/en-us/library/office/ff820840.aspx
我希望看到完整的列名,而无需手动调整大小。
答案 0 :(得分:1)
将单元格值和格式从C1:F1复制到右侧未使用的列,然后使用Range.AutoFit。使用调整后的宽度设置原稿的列宽。
Dim c As Long, cc As Long
With Worksheets("Sheet1")
cc = .Cells(1, .Columns.Count).End(xlToLeft).Column + 1
For c = 3 To 6
.Cells(1, c).Copy Destination:=.Cells(1, cc)
.Columns(cc).AutoFit
.Columns(c).ColumnWidth = .Columns(cc).ColumnWidth
Next c
.Columns(cc).Cells.Clear
End With
这将仅根据格式化的标题行调整每个列宽。