All 当我编写以下excel VBA代码时,宏将列宽10.86应用于整个工作表,并忽略与列(A,B,C(相关的术语。
Columns("A:A").Select
Selection.ColumnWidth = 17.86
Columns("B:C").Select
Selection.ColumnWidth = 19.86
Columns("D:I").Select
Selection.ColumnWidth = 10.86
如果你去掉了 Select 语句,它可以正常工作。 下面的链接是关于避免在 VBA 中使用 Select 语句的良好讨论。
如何避免使用在Excel中选择VBA
Columns("A:A").ColumnWidth = 17.86
Columns("B:C").ColumnWidth = 19.86
Columns("D:I").ColumnWidth = 10.86
除非有其他代码更改选择,否则不应发生这种情况
尝试此代码,它会设置活动工作表中的宽度
Dim ws As Worksheet
Set ws = ActiveSheet
With ws
.Columns("A:A").ColumnWidth = 17.86
.Columns("B:C").ColumnWidth = 19.86
.Columns("D:I").ColumnWidth = 10.86
End With