Excel - генерировать операторы INSERT и обрабатывать одинарные кавычки - PullRequest
0 голосов
/ 10 февраля 2020

У меня есть следующая формула в электронной таблице Excel:

="INSERT INTO #dreams VALUES('"&B3&"','"&C3&"','"&D3&"','"&E3&"','"&F3&"','"&G3&"','"&H3&"','"&I3&"')"

Работает нормально, в основном, если у меня нет таких данных, например, в D3.

US INVESTMENTS' GRADE CORPORATE BOND FUND (QUALIFIED)

В этом случае инструкция INSERT выглядит следующим образом:

INSERT INTO #dreams VALUES('2019039','550678','US INVESTMENTS' GRADE CORPORATE BOND FUND (QUALIFIED)','F','5f','Hirofumi Nakamura','ACBD1','N')

Эта одинарная кавычка будет интерпретироваться как разделитель. Мне нужно иметь US INVESTMENTSS ''

То есть заменить одну одинарную кавычку на одну одинарную.

Я пробовал разные вещи, но не могу заставить их работать.

РЕДАКТИРОВАТЬ: Будет ли что-то похожее на эту работу?

="INSERT INTO #dreams VALUES('"&B3&"','"&C3&"',=SUBSTITUTE(D2,"'","''"),'"&E3&"','"&F3&"','"&G3&"','"&H3&"','"&I3&"')"

Ответы [ 2 ]

3 голосов
/ 10 февраля 2020

Оберните каждую ссылку на столбец SUBSTITUTE и замените ' на ''. Например SUBSTITUTE(B3,"'","''").

0 голосов
/ 10 февраля 2020

Используя то, что сказал @Rory, это работает:

="INSERT INTO #dreams VALUES('"&B3&"','"&C3&"','"&SUBSTITUTE(D3,"'","''")&"','"&E3&"','"&F3&"','"&G3&"','"&H3&"','"&I3&"')"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...