Я до сих пор не смог сделать это без ошибок.
Для проекта, который я делаю, я использую доступ Microsoft для создания базы данных, которая будет использоваться для фильтрации данных для отчета из ОДНОЙ таблицы на основе информации, вводимой из множественных множественных списков выбора, множественных текстовых полей и одно поле со списком.
Я знаю, как сделать для одного списка множественного выбора, но у меня возникают проблемы с добавлением в мои другие списки множественного выбора, которые у меня есть. Можно ли сделать все это из одного источника или мне придется использовать несколько таблиц?
Если я смогу сделать это из одной таблицы (как источника), как бы я поступил так, а также добавил бы текстовые поля и комбинированный список? При необходимости я могу предоставить свой код того, что у меня есть.
https://access -programmers.co.uk / форум / showthread.php? Т = 286294 & страница = 2
Код:
Private Sub Command62_Click ()
Dim db As DAO.Database
Dim qdf As DAO.QueryDef
Dim varItem As Variant
Dim strCriteria As String
Dim strCriteria1 As String
Dim strCriteria2 As String
Dim strSQL As String
Set db = CurrentDb ()
Установить qdf = db.QueryDefs ("qryMultiselect")
Для каждого варианта во мне! District.ItemsSelected
strCriteria = strCriteria & ",'" & Me!District.ItemData(varItem) & "'"
Следующая переменная
Если Len (strCriteria) = 0, то
MsgBox "You did not select anything in the Contract field." _
, vbExclamation, "Nothing to find!"
Exit Sub
Конец, если
strCriteria = Right(strCriteria, Len(strCriteria) - 1)
Для каждого варианта во мне! MOPointofEntry.ItemsSelected
strCriteria1 = strCriteria1 & ",'" & Me!MOPointofEntry.ItemData(varItem) & "'"
Следующая переменная
Если Len (strCriteria1) = 0, то
MsgBox "You did not select anything in the Name field." _
, vbExclamation, "Nothing to find!"
Exit Sub
Конец, если
strCriteria1 = Right(strCriteria1, Len(strCriteria1) - 1)
Для каждого варианта во мне! MOMethodofEntry.ItemsSelected
strCriteria2 = strCriteria2 & ",'" & Me!MOMethodofEntry.ItemData(varItem) & "'"
Следующая переменная
Если Len (strCriteria2) = 0, то
MsgBox "You did not select anything in the Type field." _
, vbExclamation, "Nothing to find!"
Exit Sub
Конец, если
strCriteria2 = Right(strCriteria2, Len(strCriteria2) - 1)
strSQL = "SELECT * from TblDataEntry" & _
"ГДЕ TblDataEntry.District IN (" & strCriteria & ") И TblDataEntry.MOPointofEntry IN (" & strCriteria1 & ") И TblDataEntry.MOMethodofEntry IN (" & strCriteria2 & "10)" *
qdf.SQL = strSQL
DoCmd.OpenQuery "qryMultiselect"