私は、txtSearchというテキストボックスを使用して分割フォームをフィルタリングしています。テキストボックスを使用して分割フォームをフィルタリングする
Private Sub txtSearch_AfterUpdate()
On Error GoTo CleanFail
If Nz(Me.txtSearch.Text, "") = "" Then
Me.FilterOn = False
Me.txtSearch.SetFocus
Exit Sub
End If
Me.Filter = "Produktnamn like '" + Me.txtSearch.Text + "*' or ATC like '" + Me.txtSearch.Text + "*' or Företag like '" + Me.txtSearch.Text + "*' or Statustxt like '" + Me.txtSearch.Text + "*' or Enhetsnamn like '" + Me.txtSearch.Text + "*' or FullName like '" & _
Me.txtSearch.Text + "*'"
Me.FilterOn = True
Me.txtSearch.SetFocus
Me.txtSearch.SelStart = Len(Nz(Me.txtSearch.Text, "")) + 1
CleanExit:
Exit Sub
CleanFail:
If Err.Number = 2158 Then
Err.Clear
Me.FilterOn = False
Resume CleanExit
End If
End Sub
は私がtxtSearchにテキストを挿入する際、分割形式でデータをフィルタリングすることができる午前:テキストボックスの更新後のイベントでは、私は次のマクロを挿入しました。ただし、テキストボックスを空にしてすべてのレコードを再度表示すると、以前の検索が成功した場合にのみフィルタが無効になります。つまり、一致するレコードがないテキストボックスに何かを入力すると、テキストボックスを空にしてもまだレコードが表示されません。また
サブに「Me.Requery」を追加しようとしましたか?私は 'Me.FilterOn = False'の直後に配置して、テキストボックスを空にした後にすべてのレコードを元に戻すことを確認します。 – LostReality
まだ動作しません - テキストボックスを空にした後にレコードが返されません... – udden2903
'NZ()'の場合、フィルタを再設定してください: 'Me.Filter =" "'とrequery –