ё |
---|
Евген1985 |
---|
Здравствуйте. Хотел задать вопрос. Имеется форма в которой показываются записи. Есть поле для ввода. Есть желание сделать так чтоб во время заполнения этого поля текстовым значением происходила постепенная фильтрация согласно введенным в это поле данным. Например ввожу в поле "Т" - филтруются записи у котороых в определенном поле первая Т, затем ввожу "у" - остаются записи с полями "Ту" и т.д.. Заранее благодарствую. |
в событии Change "поле для ввода", создаёте строку запроса с фильтром и присваиваете её me.recordsource |
Если можно по конкретнее как я понимаю конструкция должна быть следующая:
Private Sub Поле_Change()
Dim sql As String
sql = "SELECT Subblok.Name FROM Subblok WHERE (((Subblok.Name)=[Forms]![Subblok]![Поле])) ORDER BY Subblok.Name; "
Me.RecordSource = sql
End Sub
У меня получается после ввода первого символа все записи исчезают(даже если поля с таким символом присутствуют) и курсор ввода переходит на поле пустой записи(т.е. если продолжать ввод данных они вводятся в поле Subblok.Name) - для дальнейшего ввода в поле по которому должна происходить фильтрация, необходимо перевести на него курсор.А это неудобно. Может я что то не так написал в коде?