Specifying Rule Conditions

The Rules object model supports the most commonly used rule actions and conditions. Each Rule object has an Actions property that represents the rule actions for that rule, as well as a Conditions property and an Exceptions property that represent the conditions for that rule. Este tópico descreve como o modelo de objeto Rules oferece suporte às condições de regra.

As condições de regra para uma regra são representadas por um objeto de coleção RuleConditions . A RuleConditions object has properties that correspond to each commonly used rule condition in a rule. Por exemplo, se uma regra especifica duas condições - a mensagem é importante e o assunto contém determinadas palavras - então as propriedades Importance e Subject do objeto de coleção RuleConditions da regra retornarão os respectivos objetos de condição de regra habilitados (RuleCondition.Enableed é True).

As condições que não são especificadas em uma regra não serão habilitadas no objeto RuleCondition correspondente (RuleCondition.Enableed é False). Rule condition objects are represented by either the RuleCondition object or customized objects derived from the RuleCondition object. In the last example, the RuleConditions.Importance property will return an ImportanceRuleCondition object, and the RuleConditions.Subject property will return a TextRuleCondition object, both of which are derived from the RuleCondition object. O objeto RuleCondition e seus objetos derivados têm a propriedade ConditionType que indicará o tipo da condição de regra, por exemplo, ImportanceRuleCondition.ConditionType indicará o valor olConditionImportance e TextRuleCondition.ConditionType indicará olConditionSubject.

Lembre-se de que o modelo de objeto Rules mantém paridade parcial com o Assistente de Regras e Alertas. Isso significa que, embora você possa usar o assistente para criar regras que especifiquem qualquer ação e condição visualizada no assistente, é possível criar, de forma programática, regras que usem algumas dessas ações e condições, porém não todas. An example of a condition that the Rules object model supports for rules created by the Wizard but not for those created by the object model is messages of certain level of sensitivity. Use o Assistente para criar uma regra especificando a confidencialidade como condição.

Using the Rules object model, you can enumerate this kind of rule in the Rules collection - for each rule in the Rules collection, enumerate its RuleConditions collection and look for an enabled rule condition for sensitivity. No código, isso significaria para cada regra na coleção Regras , enumerar RuleConditions.Item(Index) usando o Índice de 1 para RuleConditions.Count e procurar uma condição habilitada com RuleCondition.ConditionType igual a olConditionSensitivity. You can also enable or disable such a rule condition in a rule. No entanto, você não pode criar programaticamente uma regra que especifica a condição olConditionSensitivity .

A tabela a seguir lista todas as condições de regra suportadas pelo Assistente de Regras e Alertas e se cada condição de regra tem suporte ao criar uma regra usando o modelo de objeto Regras. A rule condition that is not supported in rules created by the Rules object model is supported only for programmatic enumeration and enabling or disabling in existing rules created by the Rules and Alerts Wizard. The table also shows whether the rule condition applies to rules with the olRuleReceive rule type or olRuleSend rule type, or both.

Nota Você não pode habilitar ou desabilitar uma condição de regra do tipo olConditionOtherMachine. This type of rule condition indicates that the rule can run only on a certain computer, but the current computer is not that computer. This happens when the rule is created on one computer and the rule condition olConditionLocalMachineOnly is enabled, indicating that the rule can run only on that computer. In certain cases, olConditionLocalMachine is automatically set as a result of enabling another rule condition such as olConditionAccount. When you run the same rule on another computer, the rule will show that the condition olConditionOtherMachine is enabled.

Condition Constante em olRuleConditionType Com suporte ao criar novas regras programaticamente? Aplica-se às regras olRuleReceive? Aplica-se às regras olRuleSend?
Conta é a conta especificada em AccountRuleCondition.Account. olConditionAccount Sim Sim Sim
A mensagem é atribuída a qualquer categoria. olConditionAnyCategory Sim Sim Sim
O corpo contém palavras especificada em TextRuleCondition.Text. olConditionBody Sim Sim Sim
Corpo ou o assunto contém palavras especificadas por Textrulecondition. olConditionBodyOrSubject Sim Sim Sim
A mensagem é atribuída à categoria ou categorias especificadas em CategoryRuleCondition.Categorys. olConditionCategory Sim Sim Sim
A mensagem tem meu nome na caixa Cc. olConditionCc Sim Sim
A mensagem foi recebida em x e y, onde x e y são valores inteiros. olConditionDateRange Não Sim Sim
A mensagem foi sinalizada para a ação especificada. olConditionFlaggedForAction Não Sim Sim
A mensagem usa o formulário especificado em FormNameRuleCondition.FormName. olConditionFormName Sim Sim Sim
O remetente está na lista de destinatários especificada em ToOrFromRuleCondition.Recipients. olConditionFrom Sim Sim Não
A mensagem é gerada a partir de uma assinatura de RSS. olConditionFromAnyRssFeed Sim Sim Não
A mensagem é gerada a partir de uma assinatura de RSS especificada. olConditionFromRssFeed Sim Sim Não
A mensagem tem um anexo. olConditionHasAttachment Sim Sim Sim
A mensagem é marcada com o nível especificado de importância. olConditionImportance Sim Sim Sim
A regra pode ser executada somente nesta máquina. olConditionLocalMachineOnly Sim Sim Sim
A mensagem é um convite para reunião ou uma atualização. olConditionMeetingInviteOrUpdate Sim Sim Sim
Cabeçalho da mensagem contém palavras especificada em Textrulecondition. olConditionMessageHeader Sim Sim Não
A mensagem não têm meu nome na caixa Para. olConditionNotTo Sim Sim Não
A mensagem é enviada somente para mim. olConditionOnlyToMe Sim Sim Não
A mensagem é um aviso de ausência temporária. olConditionOOF Não Sim Não
A regra pode ser executada somente em uma máquina específica, diferente da máquina atual. olConditionOtherMachine Não Sim Sim
A propriedade do documento é exata, contém ou não contém as propriedades especificadas. olConditionProperty Não Sim Sim
Endereço do destinatário contém palavras especificada em Textrulecondition. olConditionRecipientAddress Sim Sim Sim
O endereço do remetente contém palavras especificadas em Textrulecondition. olConditionSenderAddress Sim Sim Não
O remetente na lista de endereços especificada em AddressRuleCondition.Address. olConditionSenderInAddressBook Sim Sim Não
A mensagem é marcada com o nível especificado de confidencialidade. olConditionSensitivity Não Sim Sim
Os destinatários para os quais foi enviada uma mensagem (Para, Cc) estão na lista de destinatários especificada em ToOrFromRuleCondition.Recipients. olConditionSentTo Sim Sim Sim
O tamanho da mensagem está entre x e y (em KB), onde x e y estão os valores Date. Por exemplo, "10;50" define a condição de tamanho entre 10 e 50KB. olConditionSizeRange Não Sim Sim
O assunto contém palavras especificadas em Textrulecondition. olConditionSubject Sim Sim Sim
Meu nome está na caixa Para. olConditionTo Sim Sim Não
A mensagem tem meu nome na caixa Para ou Cc. olConditionToOrCc Sim Sim Não
Condição de regra não reconhecida. olConditionUnknown Não Sim Não

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.