Managing Rules in the Outlook Object Model
O modelo de objeto Rules dá suporte à adição, edição e exclusão programáticas de regras. The Rule and Rules collection objects allow you to access, add, and delete rules defined for a session. Os objetos RuleAction e RuleCondition , seus objetos de coleção e objetos de ação e condição derivados dão suporte ainda mais à edição de ações e condições.
Observação
O modelo de objeto Regras fornece paridade parcial com o Assistente de Regras e Alertas na interface do usuário do Outlook. Although it does not support every single rule that you can possibly create using the Wizard, it supports the most commonly used rule actions and conditions. Assim como qualquer regra criada usando o Assistente de Regras e Alertas , as regras criadas programaticamente são aplicadas a mensagens, que incluem itens de email, solicitações de reunião, solicitações de tarefa, documentos, recibos de entrega, recibos de leitura, respostas de votação e avisos fora do escritório.
Use Store.GetRules para obter um objeto de coleção Regras que representa as regras definidas para o repositório usado na sessão atual.
Depois de obter o conjunto de regras para a sessão atual, você pode adicionar novas regras (usando Rules.Create), editar regras existentes (habilitando ou desabilitando regras, alterando sua ordem de execução e modificando ações de regra e condições de regra) ou excluir regras (usando Regras.Remover) desta coleção Regras . Observe que, embora você possa editar regras criadas em versões do Outlook antes do Microsoft Office Outlook 2007, não é possível usar versões anteriores do Outlook para editar regras criadas no Office Outlook 2007 ou posterior.
Você pode recuperar cada regra em uma coleção Regras indexando a coleção usando Rules.Item(Index), com Index sendo o nome da regra (a propriedade padrão Rule.Name) ou um valor que varia de 1 até o número total de regras na coleção, Rules.Count.
Rule.ExecutionOrder indica a ordem de execução das regras na coleção e é mapeada diretamente com o valor numérico de Index in Rules.Items(Index). Por exemplo, Rules.Item(1)
representa uma regra com Rule.ExecutionOrder sendo 1, Rules.Item(2)
representa uma regra com Rule.ExecutionOrder sendo 2 e Rules.Item(Rules.Count)
representa a regra com Rule.ExecutionOrder sendo Rules.Count.
Depois de definir uma regra, você também deve habilitá-la definindo a propriedade Rule.Enableed como True e, em seguida, salvar a regra usando Rules.Save para que a regra e seu estado habilitado persistam além da sessão atual. A rule is only enabled after it has been saved successfully. Note that Rules.Save can be an expensive operation in terms of performance on slow connections to Exchange server; you can optionally display a progress dialog box for the user to cancel the operation. O salvamento falha quando o usuário edita a mesma regra no Assistente de Regras e Alertas ou quando cancela a caixa de diálogo de andamento. Nesses casos, Rules.Save gerará um erro e o usuário resolverá o conflito respondendo à caixa de diálogo de erro aberta pelo Assistente de Regras e Alertas.
Quando você usa Rules.Save para salvar uma ou mais regras que foram criadas no Office Outlook 2007, você será solicitado com uma caixa de diálogo para lembrá-lo de que você não será capaz de editar essa regra usando versões anteriores do Outlook. Você terá que confirmar a caixa de diálogo antes que a operação de salvamento possa prosseguir.
Use Rule.Execute para executar uma regra. Note that while you must enable and save a rule to have it enabled beyond the current session, you can run the rule regardless of its enabled state. When you execute a rule, you can optionally specify the folder to apply to rule to. The default is to execute the rule against all messages in the Inbox, but not subfolders of the Inbox.
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.