自动调整目标单元格,但仅当内容较大时

我在我的Worksheet_Change Sub中使用下面的一块VBA来自动化一个特定的列与文本项:

Private Sub Worksheet_Change(ByVal Target As Range) Dim nextTarget As Range Set nextTarget = Range(Selection.Address) 'store the next range the user selects If Target.Column = 1 Then Target.Columns.Select 'autofit requires columns to be selected Target.Columns.AutoFit nextTarget.Select End If End Sub 

上面的问题是,每当你进入一个比其他单元格短的单元格的单元格时,它会缩小列以适合目标单元格,而其他单元格则不在其他单元格之中。 有什么补充,我可以解决这个问题?

使用.EntireColumn方法。 有了这个,没有必要Select任何单元格。

 Private Sub Worksheet_Change(ByVal Target As Range) 'added extra error trapping in case something happens where more than 1 column is changed. If Target.Columns.Count = 1 And Target.Column = 1 Then Target.EntireColumn.AutoFit End If End Sub