アイテムをフィルターにかける

このトピックでは、Outlook のさまざまなオブジェクトでサポートされるフィルターにおいて、プロパティを指定するときの一般的な規則について説明します。 フィルターを完了するためのプロパティの条件の指定の詳細については、「 フィルター構文 」セクションのトピックを参照してください。

フィルターは、指定した条件を満たす項目のサブセットを取得するために、一連の項目に適用できる条件または条件のセットです。 Outlook では、Microsoft Jet クエリ言語構文または DAV 検索と検索 (DASL) 構文を使用してフィルターをサポートしています。 Jet クエリ言語の構文は、Microsoft Jet Expression Service でサポートされている構文と同じであり、これが Jet クエリ言語という名前の由来となっています。

たとえば、連絡先フォルダーのアイテムにフィルターをかけて、住所がカナダにある連絡先の一覧を取得できます。 この場合、 HomeAddressCountry プロパティでフィルター処理を行います。 Jet フィルターとして表されるフィルターは になります "[HomeAddressCountry] = 'Canada'"

Outlook では、次のエントリ ポイントを通じてフィルター機能を提供しています。

エントリ ポイント Jet フィルターのサポート DASL フィルターのサポート
Application.AdvancedSearch いいえ はい
Folder.GetTable はい はい
Items.Find はい はい。 フィルターでクエリ キーワード ci_phrasematch または ci_startswith を使用すると、エラーが発生します。
Items.Restrict はい はい
Search.GetTable いいえ はい
Table.FindRow はい はい。 フィルターでクエリ キーワード ci_phrasematch または ci_startswith を使用すると、エラーが発生します。
Table.Restrict はい はい
View.Filter いいえ はい

注:

[!メモ] フィルターには Jet 構文または DASL 構文で記述したクエリを含める必要がありますが、両方の構文を混在させることはできません。

プロパティ指定子

上記のいずれかのエントリ ポイントを使用して Jet フィルターまたは DASL フィルターでプロパティを指定する場合は、次のガイドラインに従ってください。

ジェットフィルター DASL フィルター
適用可能なプロパティ 明示的に組み込まれているプロパティおよびアイテム レベルのカスタム プロパティの大部分。サポートされていないプロパティについては、該当するメソッドのトピックを参照してください。 組み込みプロパティおよびアイテム レベルのカスタム プロパティの大部分。明示的な文字列名があるかどうかにはかかわりません。サポートされていないプロパティについては、該当するメソッドのトピックを参照してください。
プロパティの参照
  • 明示的な文字列名によって参照します。

  • 明示的に組み込まれているプロパティは英語名でのみ参照でき、ローカライズされた他の言語の名前では参照できません。

  • カスタム プロパティは、英語またはローカライズされた言語で名前で参照できます。

名前空間によって参照します。
参照の形式
  • 明示的な文字列名を角かっこ ('['']') で囲みます。

  • プロパティ名の大文字と小文字は区別されません。

  • 明示的に組み込まれているプロパティでは、スペースは使用できません。

  • カスタム プロパティではスペースを使用できます。

  • Application.AdvancedSearch に指定する場合を除き、すべての DASL クエリには、先頭に "@SQL=" という接頭辞を付けます。この接頭辞は大文字と小文字が区別されます。

  • 名前空間によって参照されるプロパティは、二重引用符で囲む必要があります。

  • 名前空間によって参照されるプロパティでは、大文字と小文字が区別されます。

  • カスタム プロパティの名前にスペースが存在する場合は、そのスペースを "%20" で置き換える必要があります。 通常、DASL クエリの中の文字には、URL の文字と同じように URL エンコードを適用します。

エラー条件 フィルターに指定したカスタム プロパティが定義されていない場合、フィルターが空の場合、フィルターの引数が正しくない場合、またはフィルターを解析できない場合は、エラーが返されます。 フィルターに指定したカスタム プロパティが定義されていない場合、フィルターが空の場合、フィルターの引数が正しくない場合、またはフィルターを解析できない場合は、エラーが返されます。

フィルターの構文

フィルターの構文は、フィルターに指定しようとしているプロパティの種類によって決まります。 次のトピックでは、特定のプロパティの種類に基づいてフィルターを構築する方法について詳しく説明します。

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

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