Я довольно новичок в доступе, и у меня возникли проблемы с поиском, как выполнить поиск. У меня есть таблица, содержащая записи с несколькими полями и одно поле первичного ключа, называемое «Serial».Как использовать форму для поиска таблицы и отображения результатов в отчете в Microsoft Access 2010
Я создал форму, связанную с этой таблицей, и все, что она содержит, - это текстовое поле и кнопка, в которой пользователь может ввести любое слово или серийный номер и что угодно, и в таблице будут найдены записи, которые имеют которое соответствует введенным критериям.
Я дошел до точки, где я могу выполнить поиск по таблице и найти любую запись с совпадением, но я не могу понять, как опубликовать эту запись (и любые другие записи, которые соответствуют) новому созданному отчету, пользователь может видеть все результаты, соответствующие его критериям.
Код, который у меня есть, как таковой, и вывод дает только пустой отчет.
Строка msgbox всегда выводит правильный серийный номер для каждого поиска.
Я считаю, что проблема связана с линией DoCmd.OpenReport.
Do While Not rs.EOF 'iterate through table and check all fields
For Each Field In rs.Fields
If Field = SearchBar.Value Then
found = True
MsgBox (rs.Fields("Serial")) 'debugging
**DoCmd.OpenReport "Asset Inv", acViewReport, , "[Serial] = '" & rs.Fields("Serial") & "'"**
Exit For
End If
Next Field
If found Then
Exit Do
Else
rs.MoveNext
End If
Loop
Спасибо за помощь!
'Serial' является строка? Есть ли обработчик ошибок? Спросил параметр (опечатка)? Вы должны рассмотреть возможность использования фильтра вместо цикла через rs. Прокрутите поля запроса и объедините их в фильтр. 'strFilter = strFiler &" ["& rs.Fields.Name &"] = '"& SearchBar.Value & "'OR"' – BitAccesser