ルールの処理を指定する
Rules オブジェクト モデルでは、最もよく使用されるルールの処理と条件がサポートされています。 各 Rule オブジェクトには、そのルールのルール アクションを表す Actions プロパティと、そのルールの条件を表す Conditions プロパティと Exceptions プロパティがあります。 このトピックでは、Rules オブジェクト モデルにおけるルールの処理のサポートについて説明します。
ルールのルール アクションは、 RuleActions コレクション オブジェクトによって表されます。 RuleActions オブジェクトには、ルールで一般的に使用される各ルール アクションに対応するプロパティがあります。 たとえば、ルールで 2 つのアクション (メッセージを特定のフォルダーに移動してサウンドを再生する) を指定した場合、ルールの RuleActions コレクション オブジェクトの MoveToFolder プロパティと PlaySound プロパティは、有効になっている各ルール アクション オブジェクトを返します (RuleAction.Enabled は True)。
ルールで指定されていないアクションは、対応する RuleAction オブジェクトでは有効になりません (RuleAction.Enabled は False)。 これらのルール アクション オブジェクトは、\ RuleAction オブジェクトまたは RuleAction オブジェクトから派生したカスタマイズ されたオブジェクトによって 表されます。 最後の例では、具体的には、 RuleActions.MoveToFolder プロパティは MoveOrCopyRuleAction オブジェクトを返し、 RuleActions.PlaySound プロパティは PlaySoundRuleAction オブジェクトを返します。どちらも RuleAction オブジェクトから派生しています。 RuleAction オブジェクトとその派生オブジェクトには、ルール アクションの種類を示す ActionType プロパティがあります。 たとえば、 MoveOrCopyRuleAction.ActionType は olRuleActionMoveToFolder の値を示し、 PlaySoundRuleAction.ActionType は olRuleActionPlay を示します。
注:
Rules オブジェクト モデルでは、ルールとアラート ウィザードとの部分的なパリティが維持されます。 つまり、ウィザードを使用する場合は、ウィザードに表示される処理と条件を任意に指定してルールを作成できますが、プログラムによってルールを作成する場合は、それらの処理および条件の一部を使用できるだけで、すべてを指定できるわけではありません。 ルール オブジェクト モデルがウィザードによって作成されたルールに対してサポートするが、オブジェクト モデルによって作成されたルールに対してはサポートされていないアクションの例は、サーバーの応答を要求することです。 ウィザードを使用して、特定のサーバー応答をアクションとして指定するルールを作成します。
Rules オブジェクト モデルを使用すると、 Rules コレクション内のこれらの種類のルールを列挙できます。 Rules コレクション内の各ルールについて、 RuleActions コレクションを列挙し、サーバー応答の有効なルール アクションを探します。 コードでは、Rules コレクション内の各ルールについて、Index を 1 からRuleActions.Count に列挙し、ActionType が olRuleActionServerReply と等しい有効なアクションを探します。 ルールでこのようなルール アクションを有効または無効にすることもできます。 ただし、 olRuleActionServerReply アクションを指定するルールをプログラムで作成することはできません。
次の表は、自動仕分けウィザードでサポートされているすべてのルールの処理と、Rules オブジェクト モデルによるルールの作成時に各ルールの処理がサポートされるかどうかを示す一覧です。 Rules オブジェクト モデルによって作成したルールではサポートされないルールの処理の場合、プログラムから実行できるのは、自動仕分けウィザードで作成した既存のルールの列挙と、それらのルールを有効または無効にする操作だけです。 この表では、ルールの種類が olRuleReceive、olRuleSend、またはその両方であるルールに対して、各ルールの処理が適用されるかどうかも示しています。
操作 | olRuleActionType 定数 | プログラムによる新しいルールの作成のサポート | olRuleReceive ルールへの適用 | olRuleSend ルールへの適用 |
---|---|---|---|---|
AssignToCategoryRuleAction.Categories プロパティで指定されたカテゴリにメッセージを割り当てる | olRuleActionAssignToCategory | あり | はい | はい |
SendRuleAction.Recipients プロパティで指定した受信者リストにメッセージを CC します | olRuleActionCcMessage | あり | いいえ | あり |
メッセージの分類項目をすべて消去 | olRuleActionClearCategories | あり | はい | あり |
MoveOrCopyRuleAction.Folder プロパティで指定されるフォルダーにメッセージをコピー | olRuleActionCopyToFolder | あり | はい | あり |
カスタム アクションを実行 | olRuleActionCustomAction | なし | はい | あり |
メッセージの配信時間を指定 | olRuleActionDefer | なし | いいえ | あり |
メッセージを削除 | olRuleActionDelete | あり | はい | なし |
メッセージを完全に削除 | olRuleActionDeletePermanently | あり | はい | なし |
デスクトップ通知を表示 | olRuleActionDesktopAlert | あり | はい | なし |
メッセージ フラグを消去 | olRuleActionFlagClear | なし | はい | なし |
指定した色のフラグをメッセージに設定 | olRuleActionFlagColor | なし | はい | なし |
指定した日数以内のアクションを要求するフラグをメッセージに設定 | olRuleActionFlagForActionInDays | なし | はい | はい |
SendRuleAction.Recipients プロパティで指定される受信者一覧にメッセージを転送 | olRuleActionForward | あり | はい | いいえ |
SendRuleAction.Recipients プロパティで指定される受信者一覧にメッセージを添付ファイルとして転送 | olRuleActionForwardAsAttachment | あり | はい | なし |
指定した重要度でメッセージをマーク | olRuleActionImportance | なし | はい | はい |
MarkAsTaskRuleAction オブジェクトの FlagTo プロパティと MarkInterval プロパティを使用して、メッセージをフォローアップのタスクとしてマークする | olRuleActionMarkAsTask | あり | はい | なし |
開封済みに設定 | olRuleActionMarkRead | なし | はい | いいえ |
メッセージを oveOrCopyRuleAction.Folder プロパティで指定されたフォルダーに移動します | olRuleActionMoveToFolder | あり | はい | いいえ |
NewItemAlertRuleAction.Text プロパティで指定されたメッセージを表示する | olRuleActionNewItemAlert | あり | はい | なし |
メッセージが配信されたことを示す通知を要求 | olRuleActionNotifyDelivery | あり | いいえ | あり |
メッセージが開封されたことを示す通知を要求 | olRuleActionNotifyRead | あり | いいえ | はい |
PlaySoundRuleAction.FilePath プロパティで指定された .wav ファイルを再生する | olRuleActionPlaysound | あり | はい | なし |
通常使うプリンターでメッセージを印刷 | olRuleActionPrint | なし | はい | いいえ |
SendRuleAction.Recipients プロパティで指定される受信者一覧にメッセージをリダイレクト | olRuleActionRedirect | あり | はい | なし |
スクリプトを実行 | olRuleActionRunScript | なし | はい | なし |
指定した秘密度でメッセージをマーク | olRuleActionSensitivity | なし | いいえ | あり |
指定したメッセージを使用してサーバーで返信 | olRuleActionServerReply | なし | はい | なし |
.exe を実行 | olRuleActionStartApplication | なし | はい | なし |
仕分けルールの処理を中止 | olRuleActionStop | あり | はい | あり |
指定したテンプレート ファイル (.oft) を使用して返信 | olRuleActionTemplate | なし | はい | なし |
認識できないルールの処理 | olRuleActionUnknown | なし | はい | いいえ |
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。