Формула макроса Excel, добавляющая кавычки в формулу, что приводит к тому, что vlookup не работает - PullRequest
0 голосов
/ 17 ноября 2011

Я пытаюсь добавить формулу в ячейку. Макрос добавляет кавычки вокруг диапазона ячеек, в результате чего ячейка возвращает ошибку #name.

Это код в макросе

Cells(1, 4).FormulaR1C1 = "=VLOOKUP(RC[-2],Contracts!A7:D30,3,FALSE)"

Это то, что код возвращает в Excel после выполнения макроса.

=VLOOKUP(B4,Contracts!'A7':'D30',3,FALSE) 

Обратите внимание, что ошибка #name исчезает и формула работает после того, как я уберу цитаты вокруг ячейки A7 и D30.

Ответы [ 3 ]

2 голосов
/ 17 ноября 2011

Нельзя смешивать ссылки в стиле RC и A1 в одной формуле. Выберите один и придерживайтесь его.

"=VLOOKUP(RC[-2],Contracts!R7C1:R30C4,3,FALSE)"

будет работать

1 голос
/ 17 ноября 2011

Кажется, проблема в RC [-2].Когда я заменил это ссылкой на нормальную ячейку, макрос не поместил кавычки вокруг A7 и D30.

0 голосов
/ 17 ноября 2011

Я полагаю, что проблема вызвана смешением обозначений RC (FormulaR1C1) и A1.Вы пробовали:

Cells(1, 4).FormulaR1C1 = "=VLOOKUP(RC[-2],""Contracts!A7:D30"",3,FALSE)"

?Это должно работать.

...