您可以在自动填充功能中使用单元格而不是范围吗?

时间:2013-06-25 19:42:29

标签: vba excel-vba excel-2010 excel-2013 excel

如果我有这个,例如:

Sub ExampleThing()

    Counter = 13
    For i = 1 To Counter
        Range("A" & i) = Rnd
    Next

    Range("B1").Formula = "=(PI()*A1)"
    Range("B1").Select
    Selection.AutoFill Destination:=Range("B1:B" & Counter), Type:=xlFillDefault

End Sub

如果不是在Destination下使用Range(),我想使用Cells()?比如,不是在范围函数中使用单元格引用,而是将其替换为Cells(),如下所示:

Selection.AutoFill Destination:=Range("Cells(1,2):Cells(Counter,2)"), Type:=xlFillDefault

我一直在玩它,似乎无法让它发挥作用。

1 个答案:

答案 0 :(得分:1)

你非常接近。这是一个声明了你的变量的版本(你真的应该这样做)并删除了Select语句(也是一个好习惯):

Sub ExampleThing()
Dim Counter As Long
Dim i As Long

Counter = 13
For i = 1 To Counter
    Range("A" & i) = Rnd
Next
Range("B1").Formula = "=(PI()*A1)"
Range("B1").AutoFill Destination:=Range(Cells(1, 2), Cells(Counter, 2)), Type:=xlFillDefault
End Sub