Form.Filter プロパティ (Access)
フィルターをフォーム、レポート、クエリ、またはテーブルに適用するときに表示するレコードのサブセットを指定するには、 Filter プロパティを使用します。 読み取り/書き込みが可能な String です。
構文
式.Filter
expressionForm オブジェクトを表す変数です。
注釈
Microsoft Office Access プロジェクト (.adp) でサーバー上にあるデータにサーバー フィルターを適用するには、" ServerFilter /サーバーフィルター" プロパティを使用します。
Filter プロパティの設定値は、WHERE 句から WHERE を省いた文字列式です。 たとえば、次の Visual Basic コードでは、米国の顧客のみを表示するフィルターを定義して適用します。
Me.Filter = "Country = 'USA'"
Me.FilterOn = True
注:
Filter プロパティを設定しても、ADO Filter プロパティには影響しません。
Filter プロパティを使用してフィルターを保存し、後で適用します。 フィルターは、そのフィルターを作成したオブジェクトと共に保存されます。 オブジェクトを開くと、フィルターは自動的に読み込まれますが、自動的に適用されることはありません。
新しいオブジェクトが作成されると、作成元のテーブルまたはクエリの RecordSource、 Filter、 OrderBy、 および OrderByOn プロパティが継承されます。
保存したフィルターをフォーム、クエリ、またはテーブルに適用するには、ツール バーの [フィルターの適用] を選択するか、[レコード] メニューの [フィルター/並べ替えの適用] を選択するか、マクロまたは Visual Basic を使用して FilterOn プロパティを True に設定します。 レポートの場合、レポートのプロパティ シートの " FilterOn /フィルター適用" プロパティを [Yes/はい] に設定してフィルターを適用することができます。
[ フィルターの実行 ] ボタンは、" Filter /フィルター" および " FilterOn /フィルター適用" プロパティの状態を示します。 適用するフィルターが存在しない限り、ボタンは使用不可のままです。 現在既存のフィルターが適用されている場合、[ フィルターの実行 ] ボタンは押された状態で表示されます。
フォームを開いたときに、自動的にフィルターを適用するようにするには、"ApplyFilter/フィルターの実行" アクションを使用するマクロ、または DoCmd オブジェクトの ApplyFilter メソッドを使用するイベント プロシージャのいずれかをフォームの OnOpen イベント プロパティに指定します。
フィルターを削除するには、押された [フィルターの適用] ボタンを選択するか、[レコード] メニューの [フィルター/並べ替えの削除] を選択するか、Visual Basic を使用して FilterOn プロパティを False に設定します。
"Filter/フィルター" プロパティがフォームのデザイン ビューで設定されていると、SQL 式は検証されません。 SQL 式が無効の場合は、フィルターを適用したときにエラーが発生します。
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。