Report.Filter イベント (Access)
ユーザーが [詳細なフィルター/並べ替え] を選択してフィルター ウィンドウを開いたときに発生します。
構文
式。フィルター (Cancel、 FilterType)
式Report オブジェクトを表す変数。
パラメーター
名前 | 必須 / オプション | データ型 | 説明 |
---|---|---|---|
Cancel | 必須 | 整数型 (Integer) | フィルター ウィンドウを開くかどうかを設定します。 引数 Cancel を True (1) に設定すると、フィルター ウィンドウが開かなくなります。 DoCmd オブジェクトの CancelEvent メソッドを使用しても、フィルター ウィンドウを開かないようにできます。 |
FilterType | 必須 | 整数型 (Integer) | ユーザーが開こうとしているフィルター ウィンドウ。 FilterType 引数には acFilterAdvanced を指定できます。 |
注釈
このイベントが発生したときに、マクロまたはイベント プロシージャを実行するには、" OnFilter/フィルター設定時" プロパティをマクロ名または "[Event Procedure]"/"[イベント プロシージャ]" に設定します。
Filter イベントを使用して、次の処理を行います。
レポートに対するフィルターを解除します。 これには、Filter のマクロまたはイベント プロシージャで、レポートの "Filter/フィルター" プロパティまたは "ServerFilter/サーバー フィルター" プロパティを長さ 0 の文字列 (" ") に設定します。 これは、余分な条件が新しいフィルターに表示されないようにする場合に特に便利です。 たとえば、 フィルター 選択機能を使用すると、使用する条件 (レポートで選択したテキスト) が Filter または ServerFilter プロパティ WHERE 句式に追加され、[ 詳細なフィルター/並べ替え ] ウィンドウに表示されます。 これらの前の抽出条件を、 Filter イベントを使用して削除できます。
新しいフィルターに既定値を入力します。 それには、"Filter/フィルター" プロパティまたは "ServerFilter/サーバー フィルター" プロパティに、抽出条件としてこの値を設定します。 たとえば、 製品 レポートのすべてのフィルターに、現在の製品 (製品レポートの [中止済み ] コントロールが選択されていない 製品 ) のみを表示することができます。
Access のフィルター ウィンドウの代わりに独自のフィルター ウィンドウを使います。 Filter イベントが発生したら、カスタム フォームを開き、このレポートのエントリを使用して "Filter/フィルター" プロパティまたは "ServerFilter/サーバー フィルター" プロパティを設定し、元のレポートにフィルターを適用できます。 ユーザーがこのカスタム フォームを閉じると、元のレポートの FilterOn プロパティまたは ServerFilterByForm プロパティを True (1) に設定してフィルターを適用します。 Filter イベントをキャンセルすると、Access フィルター ウィンドウが開かなくなります。
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。