|
コード中のコンボボックス名とフィールド名が一致しないものがあるし、
実際のクエリでどうなっているのか不明ですが、
とりあえず抽出対象のフィールドのデータ型はすべてテキスト型のようなので、
そうだとして回答します。
メインフォームのモジュールは下記のようになります。
Private Sub ComboBoxInit()
'コンボボックスの初期化
Dim Ctl As Controlt
For Each Ctl In Me.Controls
With Ctl
If .ControlType = acComboBox And _
.Name <> Me.ActiveControl.Name Then
'コンボボックスをNULL(空)に設定(アクティブコントロール以外)
.Value = Null
End If
End With
Next Ctl
End Sub
Private Sub CmdCancel_Click()
ComboBoxInit
Me.[購買実績一覧].SetFocus
Me.[購買実績一覧].Form.Filter = ""
Me.[購買実績一覧].Form.FilterOn = False
End Sub
Public Finction SetFilter()
Dim stCri As String
ComboBoxInit
With Me.AciveControl
stCri = .Name & "='" & .Value & "'"
End With
Me.購買実績一覧.Form.Filter = stCri
Me.購買実績一覧.Form.FilterOn = True
End Finction
メインフォームのデザインビューでコンボボックスを全て選択した状態で、
「更新後処理」プロパティ欄に
=SetFilter()
と設定します。
以上でどうでしょうか。
|
|