ユーザーが [高度なフィルター/並べ替え] を選択してフィルター ウィンドウを開いたときに発生します。
構文
式。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 のサポートおよびフィードバックを参照してください。