Цикл VBA для автоподстройки динамического диапазона

Выполнял ритуал мотивации клавиатуры, чтобы попытаться заставить этот блок кода работать.

То, что он пытается сделать, это создать диапазон от ссылок на ячейки (числовые) и автозаполнять формулу над одним столбцом, а затем увеличивать строку. Это выполняется до тех пор, пока я не будет равен projWeeks

projWeeks = 36
axisRow = 46
axisCol = 5


For i = 0 To projWeeks

 axisRow = 46
 Dim tStart As Range
 Set tStart = outputSht.Cells(axisRow, axisCol)
 Dim tDest As Range
 tAxisCol = axisCol + 1
 Set tDest = outputSht.Cells(axisRow, tAxisCol)

 Selection.AutoFill Destination:=Range(tStart:tDest), Type:=xlFillDefault *///Crashes on Syntax* 


 axisRow = axisRow + 1
 Set tStart = outputSht.Cells(axisRow, axisCol)
 Set tDest = outputSht.Cells(axisRow, tAxisCol)

 Selection.AutoFill Destination:=Range(tStart:tDest), Type:=xlFillDefault

 axisRow = axisRow + 1
 Set tStart = outputSht.Cells(axisRow, axisCol)
 Set tDest = outputSht.Cells(axisRow, tAxisCol)

 Selection.AutoFill Destination:=Range(tStart:tDest), Type:=xlFillDefault

 axisRow = axisRow + 1
 Set tStart = outputSht.Cells(axisRow, axisCol)
 Set tDest = outputSht.Cells(axisRow, tAxisCol)

 Selection.AutoFill Destination:=Range(tStart:tDest), Type:=xlFillDefault

 axisCol = axisCol + 1

Next i

Есть ли другой способ ссылаться и увеличивать ячейки для запуска этого цикла? VBA - это не моя сильная сторона, если не сказать больше.

1 ответ

Selection.AutoFill Destination:=outputSht.Cells(axisRow, axisCol).Resize(1,2), _
 Type:=xlFillDefault

licensed under cc by-sa 3.0 with attribution.