MS Access VBA - Form.Filter - PullRequest
       15

MS Access VBA - Form.Filter

0 голосов
/ 18 октября 2019

Я борюсь с задачей отфильтровать форму, основанную на слове. Text1 - это мой фильтр или слово для поиска. Я хочу найти Text1 в myTable.Name.

. Я ценю любую помощь.

Private Sub Text1_AfterUpdate()
Dim strChange As String, strSQL As String, strBuilding As String

If IsNull(Me.Text1) Then
     Me!sfm.Form.FilterOn = False
Else
     Debug.Print Me.Text1

     Me!sfm.Form.Filter = "mytable.Name like '*" & Me!Text1 & "*'"
     Me!sfm.Form.FilterOn = True
End If

End Sub

Ответы [ 3 ]

0 голосов
/ 18 октября 2019

Если Имя - это имя поля, оно должно выглядеть следующим образом:

Me!sfm.Form.Filter = "[Name] like '*" & Me!Text1 & "*'"

И переименовывать элементы управления ( Text1 ) во что-то значимое - например, SearchText .

0 голосов
/ 18 октября 2019

Я ищу элемент управления в моей форме, нашел один. Это был не мой стол. Поэтому я изменил [Имя] с помощью [ControlElement], и это сработало. Большое спасибо.

0 голосов
/ 18 октября 2019

Используйте Field имя напрямую без имени таблицы, например

Me!sfm.Form.Filter = "[Field_Name] LIKE '*" & Me!Text1 & "*'"

Здесь Field_Name - ваше имя элемента управления в Subform.

...