次の方法で共有


Report.ServerFilter プロパティ (Access)

ServerFilter プロパティを使用して、Microsoft Access プロジェクト (.adp) またはデータベース内のレポートにサーバー フィルターを適用するときに表示するレコードのサブセットを指定します。 読み取り/書き込みが可能な String です。

構文

ServerFilter

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

注釈

" ServerFilter /サーバーフィルター" プロパティは、キーワード WHERE を含まない WHERE 句で構成された文字列式を指定します。 たとえば、次の Visual Basic コードでは、米国の顧客のみを表示するフィルターを定義して適用します。

Me.ServerFilter = "Country = 'USA'" 
Me.Refresh

" ServerFilter /サーバーフィルター" プロパティを設定するには、次のいずれかの操作を行います。

  • フォームのプロパティ シートでプロパティを設定します。

  • 次のコードを入力して、Visual Basic で プロパティを設定します。

      Forms(0).ServerFilter = "fieldname = value "
    

注:

[!メモ] " ServerFilter /サーバーフィルタ" プロパティの設定は、ADO の Filter プロパティに影響を与えません。

ServerFilter プロパティを使用してフィルターを保存し、後で適用します。 フィルターは、そのフィルターを作成したオブジェクトと共に保存されます。 オブジェクトを開くと、フィルターは自動的に読み込まれますが、自動的に適用されることはありません。

保存したフィルターをフォームに適用するには、ツール バーの [サーバー フィルターの適用] を選択するか、[レコード] メニューの [フィルター/並べ替えの適用] を選択するか、マクロまたは Visual Basic を使用して ServerFilterByForm プロパティを True に設定します。

[ サーバー フィルターの適用 ] ボタンは、" ServerFilter /サーバーフィルター" および " ServerFilterByForm /フォームサーバーフィルター" プロパティの状態を示します。 適用するフィルターが存在しない限り、ボタンは使用不可のままです。 現在既存のフィルターが適用されている場合、[ サーバー フィルターの適用 ] ボタンは押された状態で表示されます。

フォームを開いたときに、自動的にフィルターを適用するようにするには、"ApplyFilter/フィルターの実行" アクションを使用するマクロ、または DoCmd オブジェクトの ApplyFilter メソッドを使用するイベント プロシージャのいずれかをフォームの OnOpen イベント プロパティに指定します。 いずれの場合でも、フォームは、フォーム サーバー フィルター ウィンドウに表示されます。

サーバー フィルターを削除するには、Visual Basic を使用して ServerFilterByForm プロパティを False に設定するか、[サーバー フィルターをフォームでフィルター] ウィンドウですべてのフィルター条件をクリアしてから、[ サーバー フィルターの適用] を選択します。

ServerFilter プロパティがフォームのデザイン ビューで設定されている場合、Access は SQL 式の検証を試みません。 SQL 式が無効の場合、フィルターを適用すると、エラーが発生します。

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

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