本节介绍一个简单属性,在以前的文章中也有提及,这里拿来重点说明一下,如何对列宽进行自动设置宽度。

excel行高自动调整(Excel 如何自动设置列的宽度)(1)

Excel表格中的列宽并不是固定的大小,默认情况下不会根据你的内容进行变化,所以需要人为来进行一些变更。

根据表格内容多少的变化,表格的宽度也随之变化。

如下图所示,可以用三种方式来进行表格宽度设置。

excel行高自动调整(Excel 如何自动设置列的宽度)(2)

第一种:根据表格最大值来设置列宽。

第二种:根据表题行设置列宽。

第三种:根据指定行来设置列宽。

第二种和第三种实际上一样,只不过第三种更加自由一些。

下图为根据标题行来设置列宽的样式

excel行高自动调整(Excel 如何自动设置列的宽度)(3)

看一下代码

Private Sub CommandButton1_Click()'按整列设置宽度
Dim r As Range
Set r = Range("A:F")
r.Columns.AutoFit
Set r = Nothing
End Sub

Private Sub CommandButton2_Click())'按标题行
Dim r As Range
Set r = Range("A2:F2")
r.Columns.AutoFit
Set r = Nothing
End Sub

Private Sub CommandButton3_Click())'按某列设置
Dim r As Range, ri As Integer
ri = Me.ComboBox1.Value
Set r = Range("A" & ri & ":F" & ri)
r.Columns.AutoFit
Set r = Nothing
End Sub

excel行高自动调整(Excel 如何自动设置列的宽度)(4)

实际上仅仅是如下一行代码:

Range.Columns.AutoFit

AutoFit方法是Range对象下的,这里特别注意一点,AutoFit要应用在Columns和Rows之下。它们分别代表了工作表的列和行,就是这个意思。

明白了这一点,就不难理解上述代码了。