次の方法で共有


Report.Filter イベント (Access)

ユーザーが [詳細なフィルター/並べ替え] を選択してフィルター ウィンドウを開いたときに発生します。

構文

フィルター (CancelFilterType)

Report オブジェクトを表す変数。

パラメーター

名前 必須 / オプション データ型 説明
Cancel 必須 整数型 (Integer) フィルター ウィンドウを開くかどうかを設定します。 引数 CancelTrue (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 のサポートおよびフィードバックを参照してください。