Как выбрать диапазон ячеек в строке в Excel? - PullRequest
0 голосов
/ 13 марта 2019

Я пытаюсь выбрать диапазон значений ячеек в моем запросе Excel.

="select [ContactId]  from   [dbo].[Contacts] where username in ('"&A4&"' : '"&A12&"' )"

Выше не работает. Как я должен предоставить A4: A12 в строке выше?

Я ожидаю, что мой вывод строки будет;

выберите [ContactId] из [dbo]. [TContacts], где имя пользователя в ( 'Test1', test2, test3, .. test14)

Я использую Microsoft Office 2013.

1 Ответ

0 голосов
/ 13 марта 2019

В Excel 2013 функция TEXTJOIN недоступна, поэтому вам придется либо присоединиться к каждой ячейке отдельно, либо создать вспомогательный столбец:

Отдельные объединения:

="select [ContactId]  from   [dbo].[Contacts] where username in ("&A4&","&A5&","&A6&","&A7&","&A8&","&A9&","&A10&","&A11&","&A12&" )"

Вспомогательный столбец:

enter image description here

В B4:

=A4

В B5 (копия в B12):

=B4&","&A5

В B14:

="select [ContactId]  from   [dbo].[Contacts] where username in ("&B12&")"

Если вы получите Excel 2016, тогда вы сможете использовать TEXTJOIN:

="select [ContactId]  from   [dbo].[Contacts] where username in ("&TEXTJOIN(",",0,A4:A12)&")"

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...