Microsoft Access 2007 で表形式のフォームを作成しました。フォームにはテキスト ボックスがあり、フォーム内のアイテムをフィルター処理したいと考えています。
問題は、フォーム内のフィールドの 1 つが、会社名を保持するリンク テーブルを参照する外部キーであることです。
以下のコードを実行し、テキスト ボックスに会社名を入力してリターンを押すと、会社名に対応する数値のみを検索できます。
Private Sub Text22_AfterUpdate()
Dim mFilter As String
Dim mQuery1 As String
If IsNull(Me.Text22) Then
mQuery1 = ""
Else
mQuery1 = Me.Text22
End If
mFilter = "[ID] Like ""*" & mQuery1 & "*"""
mFilter = (mFilter + " OR ") & "[Supplier] Like ""*" & mQuery1 & "*"""
temp = MsgBox(mFilter, vbOKOnly)
Me.Filter = mFilter
Me.FilterOn = True
Me.Requery
End Sub