Especificando ações de regra
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 ações de regra.
As ações de regra para uma regra são representadas por um objeto de coleção RuleActions . Um objeto RuleActions tem propriedades que correspondem a cada ação normalmente usada em uma regra. Por exemplo, se uma regra especificar duas ações - mover a mensagem para uma pasta específica e reproduzir um som - as propriedades MoveToFolder e PlaySound do objeto de coleção RuleActions da regra retornarão os respectivos objetos de ação de regra habilitados (RuleAction.Enableed é True).
As ações não especificadas em uma regra não serão habilitadas no objeto RuleAction correspondente (RuleAction.Enabled é False). Esses objetos de ação de regra são representados pelo objeto \ RuleAction ou objetos personalizados derivados do objeto RuleAction . No último exemplo, especificamente, a propriedade RuleActions.MoveToFolder retornará um objeto MoveOrCopyRuleAction e a propriedade RuleActions.PlaySound retornará um objeto PlaySoundRuleAction , ambos derivados do objeto RuleAction . O objeto RuleAction e seus objetos derivados têm a propriedade ActionType que indicará o tipo de ação de regra. Por exemplo, MoveOrCopyRuleAction.ActionType indicará o valor olRuleActionMoveToFolder e PlaySoundRuleAction.ActionType indicará olRuleActionPlay.
Observação
O modelo de objeto Regras mantém a paridade parcial com o Assistente de Regras e Alertas. Isso significa que, embora possa usar o Assistente para criar regras que especifiquem qualquer ação e condição vista no Assistente, você pode programaticamente criar regras que usem algumas dessas ações e condições, porém não todas. Um exemplo de uma ação à qual o modelo de objeto Rules oferece suporte para regras criadas pelo Assistente, mas não para aquelas criadas pelo modelo de objeto, é a solicitação de uma resposta do servidor. Use o Assistente para criar uma regra especificando uma determinada resposta do servidor como uma ação.
Usando o modelo de objeto Regras, você pode enumerar esses tipos de regras na coleção Regras - para cada regra na coleção Regras , enumerar sua coleção RuleActions e procurar uma ação de regra habilitada para uma resposta de servidor. No código, isso significaria para cada regra na coleção Regras , enumerar RuleActions.Item(Index) usando o Índice de 1 para RuleActions.Count e procurar uma ação habilitada com ActionType igual a olRuleActionServerReply. Você também pode habilitar ou desabilitar esse tipo de ação de regra em uma regra. No entanto, você não pode criar programaticamente uma regra que especifica a ação olRuleActionServerReply .
A tabela a seguir lista todas as ações de regra com suporte do Assistente de Regras e Alertas e se cada ação de regra tem suporte ao criar uma regra usando o modelo de objeto Regras. Uma ação de regra que não tem suporte em regras criadas pelo modelo de objeto Regras tem suporte apenas para enumeração programática e habilitação ou desabilitação em regras existentes criadas pelo Assistente de Regras e Alertas. A tabela também mostra se a ação de regra se aplica às regras do tipo olRuleReceive, olRuleSend ou ambas.
Action | Constante em olRuleActionType | Com suporte ao criar novas regras programaticamente? | Aplica-se às regras olRuleReceive? | Aplica-se às regras olRuleSend? |
---|---|---|---|---|
Atribuir a mensagem às categorias especificadas na propriedade AssignToCategoryRuleAction.Categories | olRuleActionAssignToCategory | Sim | Sim | Sim |
Cc a mensagem para a lista de destinatários especificada na propriedade SendRuleAction.Recipients | olRuleActionCcMessage | Sim | Não | Sim |
Apagar todas as categorias da mensagem | olRuleActionClearCategories | Sim | Sim | Sim |
Copie a mensagem para a pasta especificada na propriedade MoveOrCopyRuleAction.Folder | olRuleActionCopyToFolder | Sim | Sim | Sim |
Executar uma ação personalizada | olRuleActionCustomAction | Não | Sim | Sim |
Adiar a entrega pelo número de minutos especificado | olRuleActionDefer | Não | Não | Sim |
Excluir a mensagem | olRuleActionDelete | Sim | Sim | Não |
Excluir permanentemente a mensagem | olRuleActionDeletePermanently | Sim | Sim | Não |
Exibir um alerta da área de trabalho | olRuleActionDesktopAlert | Sim | Sim | Não |
Apagar o sinalizador de mensagem | olRuleActionFlagClear | Não | Sim | Não |
Sinalizar a mensagem com a cor especificada | olRuleActionFlagColor | Não | Sim | Não |
Sinalizar a mensagem da ação nos dias especificados | olRuleActionFlagForActionInDays | Não | Sim | Sim |
Encaminhar a mensagem para a lista de destinatários especificados na propriedade SendRuleAction.Recipients | olRuleActionForward | Sim | Sim | Não |
Encaminhar a mensagem como um anexo para a lista de destinatários especificados na propriedade SendRuleAction.Recipients | olRuleActionForwardAsAttachment | Sim | Sim | Não |
Marcar a mensagem com a prioridade especificada | olRuleActionImportance | Não | Sim | Sim |
Marcar mensagem como uma tarefa para acompanhamento usando as propriedades FlagTo e MarkInterval do objeto MarkAsTaskRuleAction | olRuleActionMarkAsTask | Sim | Sim | Não |
Marcar como lida | olRuleActionMarkRead | Não | Sim | Não |
Mover a mensagem para a pasta especificada na propriedade oveOrCopyRuleAction.Folder | olRuleActionMoveToFolder | Sim | Sim | Não |
Exibir a mensagem especificada na propriedade NewItemAlertRuleAction.Text | olRuleActionNewItemAlert | Sim | Sim | Não |
Notificar a entrega da mensagem | olRuleActionNotifyDelivery | Sim | Não | Sim |
Notificar a leitura da mensagem | olRuleActionNotifyRead | Sim | Não | Sim |
Reproduzir o arquivo .wav especificado na propriedade PlaySoundRuleAction.FilePath | olRuleActionPlaysound | Sim | Sim | Não |
Imprimir a mensagem na impressora padrão | olRuleActionPrint | Não | Sim | Não |
Redirecionar a mensagem para a lista de destinatários especificados na propriedade SendRuleAction.Recipients | olRuleActionRedirect | Sim | Sim | Não |
Iniciar uma cadeia de caracteres | olRuleActionRunScript | Não | Sim | Não |
Marcar a mensagem com a sensibilidade especificada | olRuleActionSensitivity | Não | Não | Sim |
Fazer com que o servidor responda usando a mensagem especificada | olRuleActionServerReply | Não | Sim | Não |
Iniciar um arquivo .exe | olRuleActionStartApplication | Não | Sim | Não |
Parar o processamento de mais regras | olRuleActionStop | Sim | Sim | Sim |
Responder usando o arquivo de modelo especificado (.oft) | olRuleActionTemplate | Não | Sim | Não |
Ação de regra desconhecida | olRuleActionUnknown | 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.