Переменная цикла внутри функции формулы - PullRequest
0 голосов
/ 09 ноября 2019

Я зацикливаюсь на столбце, в котором мне нужно добавить один к переменной цикла в FORMULA
Моя проблема заключается в том, как написать правильную FORMULA для перехода к следующей ячейке с помощью переменной lrow

Прикреплен фрагмент моего кода

 Dim LastRow As Long
 For lrow = 1 To 20

 If Worksheets("cars").Range("P" & lrow) = "1" Then 

 Worksheets("cars").Range("a" & lrow).Formula = _
               "=RIGHT(h & lrow ,FIND(""."",h & lrow))"

Как объединить переменную lrow в формуле? Я также пытался "=RIGHT("h" & lrow ,FIND(""."","h" & lrow))"

Ответы [ 2 ]

1 голос
/ 09 ноября 2019

Вы можете построить строку, вставив переменные, где это необходимо.

Worksheets("cars").Range("a" & lrow).Formula = _
               "=RIGHT(h" & lrow & ",FIND(""."",h" & lrow & "))"

Обратите внимание на дополнительные кавычки и (амперсанды), которые я поместил, чтобы представить переменную из остальной части строки.

1 голос
/ 09 ноября 2019

Иногда использование Replace() позволяет избежать большого количества конкатенации и балансировки цитат:

Worksheets("cars").Cells(lrow, "A").Formula = _
       Replace("=RIGHT(H<rw>,FIND(""."",H<rw>))", "<rw>", lrow)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...