Excel VBA自动填充列
在AI列有5个名字的列表 – 我想在B列创build不同的团队,并将他们命名为Team_1,Team_2等
这是我试过的语法…
Function AutoFill() Dim KCLR As Long KCLR = sht.Cells(sht.Rows.Count, "A").End(xlUp).Row Range("B2").Select ActiveCell.FormulaR1C1 = "Team_1" Selection.AutoFill Destination:=Range("B2:" & KCLR) End Function
但是,在Selection.AutoFill Destination:=Range("B2:" & KCLR)
行Selection.AutoFill Destination:=Range("B2:" & KCLR)
我得到一个错误
范围(“B2:”&KCLR)=对象'_Global'的方法'范围'失败
我需要做什么才能成功实现AutoFill
?
Selection.AutoFill Destination:=Range("B2:" & KCLR)
应该是Selection.AutoFill Destination:=Range("B2:B" & KCLR)
因为KCLR
返回一个数字。
遵循@ harun24hr回答,为了将来更好的编码实践,避免使用Select
, ActiveCell
和Selection
,并使用完全合格的Range
。
看下面的例子:
Function AutoFill() Dim KCLR As Long KCLR = sht.Cells(sht.Rows.Count, "A").End(xlUp).Row Range("B2").FormulaR1C1 = "Team_1" Range("B2").AutoFill Destination:=Range("B2:B" & KCLR) End Function