Страницы: 1
RSS
VBA: добавить переменную в формулу
 
Код
For dn = 1 To 31
      Sheets(15).Cells(dn + 7, 3).FormulaR1C1 = _
         "=IFERROR(VLOOKUP(R[-6]C[2],OFFSET(Deliveries,0,1,,11),3,0),"""")" 
Next dn
Добрый день. Не могу решить проблему с изменением первого аргумента функции VLOOKUP, который должен меняться на R[-7]C[2], R[-8]C[2] и т.д. в ходе цикла. Аргумент - это текст, записан в ячейке как '4.  
 
Код
VLOOKUP(R3C5,
 
sokolale, да и цикл не нужен
Код
Sheets(15).Range("C8:C38").FormulaR1C1 = _
  "=IFERROR(VLOOKUP(R2C5,OFFSET(Deliveries,0,1,,11),3,0),"""")"
 
Код
Sub счет_километров()
    Dim myRange As Long
           
    myRange = Range(Range("D554").End(xlUp).End(xlUp).Cells(2, 0), Range("D554").End(xlUp).Cells(1, 0)).Select
    Range("D4") = "=SUM(myRange)"
    
End Sub
Добрый день! У меня чем-то похожая проблема...
Пишу макрос на поиск диапазона ячеек и дальнейшее суммирование данных в этих ячейках. Диапазону присваиваю переменную (myRange).


Проблема в том, что при вставке переменной в формулу =сумма, не хочет считать:
или выдает ошибку,
или, при использовании кавычек и амперсанта выдает результат -1.
Что я делаю не так?  
Изменено: Алмаз - 07.01.2021 13:16:55
 
Все делаете не так)
В ячейку Вы записываете текст "=SUM(myRange)" и ничего более. Для того, чтобы внести формулу, ищите операторы Formula, FormulaR1C1, FormulaLocal. Эти операторы преобразуют текст и помогут вставить в ячейку формулу.
Все, что между кавычкам - текст. Чтобы в текст добавить переменную, нужно его разделить:
Код
"=SUM(" & myRange & ")"

Но и  это для формулы ничего не даст :)
myRange - в переменную нужно записать диапазон. А объекты переменым присваиваются с помощью оператора Set
 
Назначаю оператор (Formula, FormulaR1C1, FormulaLocal). С операторами Formula и  FormulaR1C1  выдает результат -1. Точнее в ячейке появляется запись (СУММ(-1). А с оператором FormulaLocal #ИМЯ?
Изменено: Алмаз - 07.01.2021 15:05:06
 
А я пишу на стене "Алмаз", а там проявляется надпись "Сапфир" :) Не верите?

Правила форума Вы не читали... Советую ознакомиться. А после этого создать тему по своей задаче, ибо похоже, что вставка переменной  в формулу - не самое насущное.
 
Спасибо
Страницы: 1
Наверх