2013-06-25 3 views
0

Если у меня есть это, например:Можете ли вы использовать ячейки вместо диапазона внутри функции автозаполнения?

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, я хотел использовать Cells()? Мол, вместо того, чтобы ссылки на ячейки внутри функции диапазона, замените, что с ячейками(), как это:

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

Я играл с ним, и не могу заставить его работать.

ответ

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 
+0

Так близко! Спасибо! – TheTreeMan

 Смежные вопросы

  • Нет связанных вопросов^_^