Автор Тема: Excel VBA Макросы. Макрос неправильно вставляет формулу - формула возвращает ошибку #ИМЯ?  (Прочитано 240 раз)

Оффлайн Driver

  • Посетитель форума
  • Сообщений: 2
Я написал макрос, который вставляет в эксель-ячейку формулу.
Но формула вставляется неправильно - формула возвращает ошибку "#ИМЯ?".
Формула вставляется с помощью этого кода:
ActiveCell.FormulaR1C1 = "=Coord(J_X1,J_Y1,J_Z1,RC[-3],RC[-2],RC[-1])"

В формулу подставляются переменные J_X1, J_Y1, J_Z1 и на местах этих переменных формула возвращает ошибку "#ИМЯ?".

Почему вместо переменных возвращается ошибка "#ИМЯ?"?

Оффлайн Администратор

  • Administrator
  • Сообщений: 2017
Вы заключили переменные в кавычки, после чего переменные стали восприниматься как текст, т.е. VBA подставил в формулу не значения, которые находятся внутри переменных, а просто их имена.
Правильно так:
ActiveCell.FormulaR1C1 = "=Coord(" & J_X1 & "," & J_Y1 & "," & J_Z1 & ",RC[-3],RC[-2],RC[-1])"

Код не тестировал, возможно есть где-нибудь ошибка.

Оффлайн Driver

  • Посетитель форума
  • Сообщений: 2