VBA строка присваивания. Почему я получаю 1004 ошибку во время выполнения? - PullRequest
0 голосов
/ 22 июля 2011

В приведенной ниже строке в моем коде я получаю сообщение об ошибке 1004: ошибка приложения или объекта.Я думаю, что это может быть проблемой с правой стороны заявления.Однако я несколько раз изменил способ написания, но безрезультатно.Как видите, я попытался вставить много кодов символов.То, что я в конечном итоге хочу вставить в ячейку B1, где B1 - активная ячейка, это = "'" & A1 & "'," с пробелами для ясности: = "'" & A1 & "',"

Это должно ссылаться нав ячейку A1, возьмите это значение и поместите его в одинарные кавычки с запятой в конце.Это так, что он отформатирован для оператора SQL.

Любая помощь будет оценена.Я знаю, что это распространенная ошибка, но сообщение об ошибке не помогает.

ActiveCell.Formula = Chr(61) & "'" & Chr(34) & Chr(38) & "A1" & Chr(38) & Chr(34) & "',"

Ответы [ 2 ]

4 голосов
/ 22 июля 2011

Чтобы избежать кавычек, вам нужно удвоить их:

ActiveCell.Formula = "=""'"" & A1 & ""',"""
1 голос
/ 22 июля 2011

Я полагаю, что вам не хватает вашей первой вступительной и последней заключительной цитаты. Прямой перевод вашего кода (с пробелом для ясности), у вас есть строка ниже:

= ' " & A1 & " ,

Ниже приведен правильный синтаксис для предполагаемой формулы

ActiveCell.Formula = "=" & Chr(34) & "'" & Chr(34) & "&A1&" & Chr(34) & "'," & Chr(34)

Я убрал призывы к коду символов для упрощения, но это не обязательно.

...