PDA

Просмотр полной версии : Как сделать поиск в Ассеssе нетиповыми средствами?



Anonymous
07.04.2004, 12:32
есть таблица : Дата|Номер|Фамилия|Имя|Отче ство|и другие параметры.
в ленточной форме выводится только дата, номер, и др. Фамилия не должна быть видна, но поиск по ней должен быть реализован. Как это можно сделать?

Naeel Maqsudov
08.04.2004, 03:18
Прийдется добавить на форму (в заголовок или примечание) 3 кнопки: "Найти", "Найти выше" и "Найти ниже". На нажатие этих кнопок соответственно делать следующее:



Option Compare Database
Dim Smpl As String

Private Sub Кнопка10_Click()
Screen.PreviousControl.SetFocus
Smpl = InputBox("Введите шаблон фамилии, используя метасимволя * и ?", , Smpl)
Me.Recordset.FindFirst "Фамилия Like """ & Smpl & """"
End Sub

Private Sub Кнопка11_Click()
Screen.PreviousControl.SetFocus
Smpl = InputBox("Введите шаблон фамилии, используя метасимволя * и ?", , Smpl)
Me.Recordset.FindNext "Фамилия Like """ & Smpl & """"
End Sub

Private Sub Кнопка12_Click()
Screen.PreviousControl.SetFocus
Smpl = InputBox("Введите шаблон фамилии, используя метасимволя * и ?", , Smpl)
Me.Recordset.FindPrevious "Фамилия Like """ & Smpl & """"
End Sub




Глобальная переменная Smpl обеспечит запоминание искомого образца между процедурами поиска.
Эти макросы используют DAO, так что необходимо, чтобы какая-нибудь библиотека объектов DAO была подключена к VBA-проекту (меню Tools/References в редакторе VBA)

Anonymous
08.04.2004, 17:48
так-то оно так, но непонятно вот что: у меня есть форма, и в этой форме есть подчиненная, в recordset которой и нужно искать, собственно... а me.[имя подч. формы].recordset почему-то не работает, как к нему обратиться?

Naeel Maqsudov
10.04.2004, 02:34
me.имя_объекта_подчиненная_ф орма.Form.Recordset

Подчиненная форма - это только контейнер. Сначала надо обратиться к его содержимому (это и будет настоящая форма). А уж потом к свойствам/методам формы.