2017-01-18 158 views
0

在列AI有5名列表 - 我想在B列创建不同的团队和他们的名字TEAM_1,TEAM_2等等等等Excel的VBA自动填充柱

这是我试过的语法.. 。

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)我得到

范围的错误( “B:” & KCLR)=方法 '范围' 对象中 '_Global' 失败

我需要做什么才能成功AutoFill因为我需要?

回答

2

Selection.AutoFill Destination:=Range("B2:" & KCLR)应该是Selection.AutoFill Destination:=Range("B2:B" & KCLR)因为KCLR正在返回一个数字。

+0

非常好,谢谢!我很接近 - 仍然需要提高我的VBA技能! –

1

继@ harun24hr的回答,为今后更好的编码习惯,避免使用SelectActiveCellSelection,并且使用完全合格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