Как как вставить формулу в диапазон?

Пытаюсь написать код для вставки формулы в диапазон, не уверен что вообще правильно делаю. Постоянно ругается на $ и _. Подскажите как лучше сделать

Public Sub calc()

Range("I7:Al228).Select
Selection.Formula = "VLOOKUP($E76&"_"&IF($H76="день",1,2),'склад 3-3 с ночными'!$B$12:$AG$19,1+V$6,FALSE)"
Selection.Columns.AutoFit

End Sub

введите сюда описание изображения


Ответы (1 шт):

Автор решения: vikttur

В небольшом коде много ошибок, о них написано в комментариях.

Правильно: или вставлять формулы со стилем ссылок R1C1(ссылки определяют положение ячейки, на которую ведет ссылка), или сначала вставить формулы в первую строку диапазона, потом размножить по строкам:

Public Sub calc_()
    With Range("I7:Al7")
        .Formula = "=VLOOKUP($E76&""_""&IF($H76=""день"",1,2),'склад 3-3 с ночными'!$B$12:$AG$19,1+V$6,0)"
        .Columns.AutoFit
    End With
    
    Range("I7:Al228").FillDown
End Sub
→ Ссылка