Используйте данные в поле списка в запросе SQL
У меня есть форма со списком в нем. В окне списка отображаются результаты запроса SELECT, и я хочу, чтобы пользователь мог нажать кнопку, чтобы удалить элемент, выбранный в окне списка. Вот запрос, который я хочу выполнить, когда пользователь нажимает кнопку.
DELETE *
FROM Client
WHERE
(([Client].[ClientID])=[Forms]![UpdateDeleteClientInformationForm]![ClientFullNameListBox]);
Проблема в том, что я не уверен, как получить доступ к текущему ClientID из выбора в списке. Как получить доступ к данным в каждом из столбцов в списке для выбранного элемента в запросе SQL?
Мне не очень комфортно с Access в данный момент.
1 ответ
Решение
Вы можете построить свой запрос в VBA. Список элементов, которые нужно удалить, можно получить из списка с несколькими вариантами выбора, например:
For Each itm In AListBox.ItemsSelected
srem = srem & "," & itm
Next
srem = Mid(srem, 2)
sSQL ="DELETE FROM ATable WHERE ID IN (" & srem & ")"
CurrentDB.Execute sSQL, dbFailOnError
Обратите внимание, что вам понадобятся элементы в кавычках для текстового типа данных.