ルールの条件を指定する
Rules オブジェクト モデルでは、最もよく使用されるルールの処理と条件がサポートされています。 各 Rule オブジェクトには、そのルールのルール アクションを表す Actions プロパティと、そのルールの条件を表す Conditions プロパティと Exceptions プロパティがあります。 このトピックでは、Rules オブジェクト モデルにおけるルールの条件のサポートについて説明します。
ルールのルール条件は、 RuleConditions コレクション オブジェクトによって表されます。 RuleConditions オブジェクトには、ルールで通常使用されるルールの各条件に対応するプロパティがあります。 たとえば、ルールで 2 つの条件 (メッセージが重要であり、件名に特定の単語が含まれている) が指定されている場合、ルールの RuleConditions コレクション オブジェクトの Importance プロパティと Subject プロパティは、有効になっている各ルール条件オブジェクトを返します (RuleCondition.Enabled は True)。
ルールで指定されていない条件は、対応する RuleCondition オブジェクトでは有効になりません (RuleCondition.Enabled は False)。 ルール条件オブジェクトは、RuleCondition オブジェクトまたは RuleCondition オブジェクトから派生したカスタマイズ されたオブジェクトによって 表されます。 最後の例では、 RuleConditions.Importance プロパティは ImportanceRuleCondition オブジェクトを返し、 RuleConditions.Subject プロパティは TextRuleCondition オブジェクトを返します。どちらも RuleCondition オブジェクトから派生しています。 RuleCondition オブジェクトとその派生オブジェクトには、ルール条件の種類を示す ConditionType プロパティがあります。たとえば、ImportanceRuleCondition.ConditionType は olConditionImportance の値を示し、TextRuleCondition.ConditionType は olConditionSubject を示します。
Rules オブジェクト モデルで提供される機能は、仕分けルールと通知ウィザードとは部分的にしか同等でないことに注意してください。 つまり、ウィザードを使用する場合は、ウィザードに表示される処理と条件を任意に指定してルールを作成できますが、プログラムによってルールを作成する場合は、それらの処理および条件の一部を使用できるだけで、すべてを指定できるわけではありません。 ウィザードによって作成したルールではサポートされても、Rules オブジェクト モデルによって作成したルールではサポートされない条件の一例として、特定のレベルの秘密度のメッセージがあります。 ウィザードを使用して、条件として秘密度を指定するルールを作成します。
Rules オブジェクト モデルを使用すると、 Rules コレクション内のこの種のルールを列挙できます。 Rules コレクション内の各ルールについて、 RuleConditions コレクションを列挙し、秘密度の有効なルール条件を探します。 コードでは、これは Rules コレクション内の各ルールについて、Index を 1 からRuleConditions.Count に列挙し、RuleCondition.ConditionType が olConditionSensitivity と等しい有効な条件を探します。 このようなルールの条件を有効化または無効化することもできます。 ただし、 olConditionSensitivity 条件を指定するルールをプログラムで作成することはできません。
次の表に、ルールとアラート ウィザードでサポートされているすべてのルール条件と、Rules オブジェクト モデルを使用してルールを作成するときに各ルール条件がサポートされているかどうかを示します。 Rules オブジェクト モデルによって作成されたルールでサポートされていないルール条件は、プログラムによる列挙と、ルールとアラート ウィザードによって作成された既存のルールでの有効化または無効化に対してのみサポートされます。 この表では、ルールの種類が olRuleReceive、olRuleSend、またはその両方であるルールに対して、各ルールの処理が適用されるかどうかも示しています。
メモolConditionOtherMachine 型のルール条件を有効または無効にすることはできません。 この種類のルールの条件は、ルールが特定のコンピューターでのみ実行でき、現在のコンピューターでは実行できないことを示します。 これは、ルールがあるコンピューターで作成され、そのルールはそのコンピューターでのみ実行できることを示すルールの条件 olConditionLocalMachineOnly が有効であるときに生じます。 場合によっては、 olConditionAccount などの別のルールの条件を有効にした結果、 olConditionLocalMachine が自動的に設定されます。 別のコンピューターで同じルールを実行すると、条件 olConditionOtherMachine が有効になっていることを示すメッセージが表示されます。
Condition | olRuleConditionType 内の定数 | プログラムによる新しいルールの作成のサポート | olRuleReceive ルールへの適用 | olRuleSend ルールへの適用 |
---|---|---|---|---|
Account は AccountRuleCondition.Account で指定されたアカウントです。 | olConditionAccount | はい | はい | はい |
メッセージがどの分類項目に割り当てられていてもかまわないこと。 | olConditionAnyCategory | はい | はい | はい |
本文に、 TextRuleCondition.Text で指定される単語が含まれている場合です。 | olConditionBody | はい | はい | はい |
本文または件名に指定した単語が含まれています TextRuleCondition.Text 。 | olConditionBodyOrSubject | はい | はい | はい |
メッセージには、 CategoryRuleCondition.Categories で指定されたカテゴリまたはカテゴリが割り当てられます。 | olConditionCategory | はい | はい | はい |
メッセージの [CC] ボックスに自分の名前があること。 | olConditionCc | はい | はい | |
メッセージが x ~ y (x および y は整数値) の間に受信されたこと。 | olConditionDateRange | いいえ | はい | はい |
メッセージに指定した処理のフラグが付けられていること。 | olConditionFlaggedForAction | いいえ | はい | はい |
メッセージで、 FormNameRuleCondition.FormName で指定されるフォームが使用されている場合です。 | olConditionFormName | はい | はい | はい |
送信者が、 ToOrFromRuleCondition.Recipients で指定されるアドレス帳に含まれている場合です。 | olConditionFrom | はい | はい | いいえ |
メッセージが任意の RSS 購読から生成されていること。 | olConditionFromAnyRssFeed | はい | はい | いいえ |
メッセージが、指定された RSS 購読から生成されていること。 | olConditionFromRssFeed | はい | はい | いいえ |
メッセージに添付ファイルがあること。 | olConditionHasAttachment | はい | はい | はい |
メッセージが特定のレベルの重要度に設定されていること。 | olConditionImportance | はい | はい | はい |
ルールは、このマシンでのみ実行できます。 | olConditionLocalMachineOnly | はい | はい | はい |
メッセージが会議出席依頼または更新のメッセージである場合です。 | olConditionMeetingInviteOrUpdate | はい | はい | はい |
メッセージのヘッダーには、 TextRuleCondition.Text で指定した単語が含まれています。 | olConditionMessageHeader | はい | はい | いいえ |
メッセージの [ 宛先] ボックスに自分の名前が含まれていない場合です。 | olConditionNotTo | はい | はい | いいえ |
メッセージが自分だけに送信されている場合です。 | olConditionOnlyToMe | はい | はい | いいえ |
メッセージが外出中の応答メッセージである場合です。 | olConditionOOF | いいえ | はい | いいえ |
ルールは、現在のマシンではない特定のマシンでのみ実行できます。 | olConditionOtherMachine | いいえ | はい | はい |
ドキュメントのプロパティが指定されたプロパティと一致するか、指定されたプロパティを含む、または含まない場合です。 | olConditionProperty | いいえ | はい | はい |
受信者のアドレスには、 TextRuleCondition.Text で指定した単語が含まれています。 | olConditionRecipientAddress | はい | はい | はい |
センダーのアドレスには、 TextRuleCondition.Text で指定した単語が含まれています。 | olConditionSenderAddress | はい | はい | いいえ |
送信者が、 AddressRuleCondition.Address で指定されるアドレス一覧に含まれている場合です。 | olConditionSenderInAddressBook | はい | はい | いいえ |
メッセージに特定の秘密度が指定されている場合です。 | olConditionSensitivity | いいえ | はい | はい |
転送先 ([宛先]、[Cc]) が、ToOrFromRuleCondition.Recipients で指定されるアドレス帳に含まれている場合です。 | olConditionSentTo | はい | はい | はい |
メッセージ サイズは KB 単位で x から y の間で、x と y は Date 値です。 たとえば、"10;50" は、サイズ条件を 10 ~ 50 KB に設定します。 | olConditionSizeRange | いいえ | はい | はい |
件名には、 TextRuleCondition.Text で指定した単語が含まれています。 | olConditionSubject | はい | はい | はい |
自分の名前が [ 宛先] ボックスに含まれている場合です。 | olConditionTo | はい | はい | いいえ |
メッセージの [ 宛先] または [ Cc] ボックスに自分の名前が含まれている場合です。 | olConditionToOrCc | はい | はい | いいえ |
認識されないルールの条件。 | olConditionUnknown | いいえ | はい | いいえ |
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。