Использовать список с множественным выбором в запросе

#ms-access #listbox

#ms-access #окно списка

Вопрос:

Учитывая, что я создал форму доступа со списком; property > other > Multi Select = Extended ; который разрешает множественный выбор.

Пользователь выбирает несколько элементов.

Нажимает кнопку, которая создает отчет в режиме «Предварительный просмотр»; но этот отчет основан на запросе, а запрос основан на значениях в форме.

Это достигается с помощью этого в запросе при просмотре в режиме разработки запроса Access (не SQL):

 Like ([forms]![padc]![V2])
  

Где имя формы — padc , а значение для сравнения — V2 .

Ранее вместо списка, который мог отображать 10 параметров, V2 было просто поле с одним значением. Пользователь либо ввел бы частичное значение, такое как jack* , и отчет извлек бы каждый экземпляр, с которого начиналось это значение jack ; было ли это jack , или jackie , или jacko , или jackson и т.д. LIKE Часть этого допускала «нечеткую» логику, приводящую к различным результатам. Запрос будет выполнен, и в отчете будут показаны все записи, которые начинаются с jack .

На самом деле моя цель состоит в том, чтобы пользователь выбрал один, два или три или все доступные параметры в этом окне и получил правильный ответ отчета.

Я полагаю, что ListBox позволит мне это сделать, при условии, что у меня есть все правильные имена в таблице, которая является источником опций, доступных для выбора.

Я установил для списка значение «множественный выбор», чтобы включить множественный выбор в форме. Форма удовлетворяет. Это может позволить мне щелкнуть / выделить один или несколько элементов из списка.

Запрос не выполняется.

Для поля V2 ни

 Like ([forms]![padc]![V2])
  

ни

 =([forms]![padc]![V2])
  

Извлекает записи для заполнения отчета; независимо от того, выбрано ли только одно значение в поле списка или несколько значений. ( Like = нечеткий и = означает точное совпадение.)

Ни то, ни другое не работает.

Конечно, если запрос не будет выполнен, то и отчет не будет выполнен.

Как я могу написать правильный запрос в Access, используя «Вид запроса = конструкторский вид» и / или SQL, чтобы заставить это функционировать должным образом?

Если ответ «это невозможно сделать без использования VBA», то, пожалуйста, укажите мне на решение VBA, которое может понять 5-летний ребенок, потому что у меня нет опыта использования VBA.

Люди рекомендовали мне использовать VBA; в частности, что я должен каким-то образом включить « IN() В функцию»; но я вообще не понимаю это решение.

Я признаю, что я невежествен; не глупый; но невежественный.

Комментарии:

1. Можно вручную встроить критерии IN () в объект запроса, но он не может быть динамическим. Требуется код VBA для построения критериев и применения к отчету при открытии. Если Аллен Браун не может помочь, то, возможно, никто не сможет allenbrowne.com/ser-50.html .

2. AFAIK, не удается смешать.

3. AFAIK? что такое «AFAIK?

4. Насколько я знаю.