MS Access с использованием фильтра приложений из конструктора макросов с полем «Поле ввода параметров».

#ms-access #combobox #office365

Вопрос:

На этот раз я пытаюсь работать над приложением MS Access. У меня есть разделенная форма, заполненная с помощью SQL-запроса. Теперь я хочу отфильтровать эту форму с помощью выпадающего списка, который расположен в заголовке формы. Этот CB также заполняется SQL-запросом:

 SELECT DISTINCT [ConsultQ].[ClientName] FROM ConsultQ; 
 

Я добавил встроенный запрос в это поле, которое должно фильтровать форму. Значения, указанные в выпадающем списке, являются правильными. Но когда я выбираю значение из поля, появляется всплывающее окно, которое запрашивает у меня ввод.

введите описание изображения здесь

Действие applyFilter установлено в:

введите описание изображения здесь

Таким образом, по-видимому, действие applyFilter не может получить выбранное значение выпадающего списка. Что я здесь делаю не так?

Когда я ввожу имя в поле ввода, фильтр применяется правильно. Таким образом, фильтр работает, но я не могу установить фильтр, используя выбранное значение комбинации.

Это должно быть что-то простое, но я не могу его найти.

Я использую версию MS Access Office 365.

Ответ №1:

Удалите свойство [Текст]. Вы хотите, чтобы [Значение] и [Значение] было по умолчанию, поэтому на него не нужно ссылаться явно.

Также нужна полная ссылка на путь к выпадающему списку.

Forms!yourformName!cboClient

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

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

1. Спасибо вам за этот ответ, он работает. Я не знал, что мне нужно было использовать полный путь к компоненту. Точка обучения.