如果文本写在文本框中,如何刷新子查询?

时间:2017-09-11 07:07:49

标签: sql ms-access

我创建了一个带有文本框和子查询的表单。文本框过滤子查询,但每次我写出要过滤的内容时,我必须从文本框中选择并按“全部刷新”按钮。
我想知道如何制作它,以便每当我在文本框中写一些东西时,子查询就会相应地更新和过滤。
我还应该提到我使用的是Microsoft Access 2007,我的表单如下所示:https://imgur.com/a/DpQ7p

感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

您可以使用文本框的 OnChange 事件并过滤 Text 属性:

Me!SubformControlName.Form.Filter = "[SomeField] = '" & Me!YourTextbox.Text & "*'"
Me!SubformControlName.Form.FilterOn = True 

或者也许:

Me!SubformControlName.Form.Requery

答案 1 :(得分:0)

使用文本框的更改事件。

Private Sub TextBox_Change()
    With Me
        If Len(.TextBox.Text) = 0 Then
            .SubForm.Form.FilterOn = False
        Else
            .SubForm.Form.Filter = "[FieldName] Like '*" & .TextBox.Text & "*'"
            .SubForm.Form.FilterOn = True
        End If
    End With
End Sub

更新

Private Sub Text4_Change()
    With Me
        If Len(.Text4.Text) > 0 Then
            .[Kupci Query subform].Form.Requery
        End If
    End With
End Sub