Report.Filter イベント (アクセス)

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

構文

Filter (キャンセル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 イベントをキャンセルすると、アクセス フィルター ウィンドウが開かない。

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。