2010-07-07 2 views
1

Я пишу макрос, который требует от меня получить среднее значение в столбце с неизвестным количеством строк. Я использую это для получения номера последней строки:Ошибка #NAME при настройке формулы ячейки через VBA.

Dim lastRow As Long 
lastRow = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row 

Это работает. Что не работает, когда я пытаюсь использовать его здесь:

Range("B2").Select 
ActiveCell.FormulaR1C1 = "=AVERAGE('table1'!AM2:AM" & lastRow & ")" 

Делая это, я получаю результат #NAME?. Как я могу это исправить?

ответ

4

Измените ActiveCell.FormulaR1C1 на ActiveCell.Formula, так как вы используете базовую нотацию A1, а не R1C1.