Microsoft Access 掲示板

ファームにある複数のコンボボックスでフィルター / 1

15 コメント
views
4 フォロー
1
hiroton 2024/02/15 (木) 13:56:16 48bf2@f966d

プログラミングの基本ですが、共通の処理は関数にまとめるものです

なので、「共通になるような処理を考えてそれを呼び出すようにする」とスマートです

ACCESSのフィルター処理は結構テンプレート的な感じで、ここでも同じような回答を何度かしてますが、自作のプロシージャを作ってそれを呼び出すようにすると良いです

例えば、以下のようにsetFilterプロシージャを作成し、各コンボボックスの更新後処理でそれを呼び出すようにします

Private Sub cb1_AfterUpdate()
    setFilter
End Sub

Private Sub cb2_AfterUpdate()
    setFilter
End Sub

Private Sub cb3_AfterUpdate()
    setFilter
End Sub

Private Sub setFilter()
'フィルタをかける処理
End Sub

各イベントが、プロシージャの呼び出ししかしないのであれば、そのプロシージャを関数にして、ユーザー定義関数の呼び出しの形にするとコードはもっとすっきりしますね

モジュール

Private Function setFilter()
'フィルタをかける処理
End Sub

各コントロールの更新後処理プロパティ

=setFilter()
通報 ...