Como criar uma regra personalizada no Outlook 2000 usando o Visual Basic for Applications

ID do artigo: 235852 - Exibir os produtos aos quais esse artigo se aplica.
Para uma versão deste artigo do Microsoft Outlook 2002, consulte 292063.
Expandir tudo | Recolher tudo

Sumário

Se o Assistente de regras do Outlook não fornecer um recurso que atenda às suas necessidades de roteamento de email, você talvez pode usar o Visual Basic for Applications do Outlook para criar uma regra personalizada. Este artigo descreve como começar a configurar uma regra simples e aborda algumas considerações importantes a serem lembrados ao criar uma regra usando o Visual Basic for Applications.

Mais Informações

Microsoft fornece exemplos de programação apenas para ilustração, sem garantia expressa ou implícita, incluindo, mas não se limitando às garantias implícitas de comercialização e/ou adequação a uma finalidade específica. Este artigo presume que você esteja familiarizado com a linguagem de programação demonstrada e as ferramentas usadas para criar e depurar procedimentos. Profissionais de suporte da Microsoft podem ajudar a explicar a funcionalidade de um determinado procedimento, mas eles não modificarão esses exemplos para fornecer funcionalidades adicionais ou construir procedimentos para atender às suas necessidades específicas.
Se você não tenha muita experiência de programação, talvez queira em contato com um Microsoft Certified Partner ou Microsoft Advisory Services. Para obter mais informações, visite da Microsoft:

Microsoft Certified Partners - https://partner.microsoft.com/global/30000104

Comunicado de Microsoft Services - http://support.microsoft.com/gp/advisoryservice

Para obter mais informações sobre as opções de suporte estão disponíveis e sobre como entrar em contato com a Microsoft, visite o seguinte site: http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMSAs etapas a seguir criam uma regra que encaminha qualquer email que você receber fora do horário comercial normal para outro endereço de email, como o endereço de email que você usa em casa, ou para outra pessoa que a mudança de funcionar após sua automaticamente.

  1. No menu Ferramentas , aponte para macro e clique em Editor do Visual Basic .
  2. No painel de projeto - Projeto1 , clique duas vezes em Projeto1 e clique duas vezes em Objetos do Microsoft Outlook .
  3. Clique duas vezes em ThisOutlookSession para abrir uma janela de código.
  4. Na janela código, digite o código a seguir. Modifique a linha que especifica o endereço de email; substitua o endereço de email deseja email encaminhado para:
    Public WithEvents myOlItems As Outlook.Items
    
    
    Public Sub Application_Startup()
    
       ' Reference the items in the Inbox. Because myOlItems is declared
       ' "WithEvents" the ItemAdd event will fire below.
       Set myOlItems = Outlook.Session.GetDefaultFolder(olFolderInbox).Items
    
    End Sub
    
    
    Private Sub myOlItems_ItemAdd(ByVal Item As Object)
    
       ' If it's currently not between 9:00 A.M. and 5:00 P.M.
       If Time() < #9:00:00 AM# Or Time() > #5:00:00 PM# Then
    
          ' Check to make sure it is an Outlook mail message, otherwise
          ' subsequent code will probably fail depending on what type
          ' of item it is.
          If TypeName(Item) = "MailItem" Then
    
             ' Forward the item just received
             Set myForward = Item.Forward
    
             ' Address the message
             myForward.Recipients.Add "myaddress@mydomain.com"
    
             ' Send it
             myForward.Send
    
          End If
    
       End If
    
    End Sub
    					
  5. No menu arquivo , clique em Salvar VBAProject.otm .
  6. Feche o Editor do Visual Basic.
  7. Reinicie o Outlook para que o código seja executado.
Observação : para obter mais informações sobre como tornar-se de que o seu código corretamente trata vários tipos de itens, consulte o seguinte artigo na Base de dados de Conhecimento da Microsoft:
222482 OL2000: como identificador inesperados itens em uma coleção
As seguintes considerações devem ser levadas em conta se você estiver pretendendo implementar uma solução de regras usando o Visual Basic for Applications:
  • O Outlook deve estar em execução para o Visual Basic para código de aplicativo executar. Isso é o mesmo efeito que usar regras do lado do cliente no Assistente de regras. Se o Outlook não estiver sendo executado no momento que a mensagem chega, a regra não funcionará.
  • Sua regra personalizada pode entrar em conflito com outras regras que você configurou usando o Assistente de regras. Por exemplo, se você estiver usando o Microsoft Exchange Server e criar uma regra de servidor que move o email de um indivíduo específico para uma pasta específica, o email é movido no servidor e nunca chegue a caixa de entrada. Portanto, o evento ItemAdd não é executado como um item não é adicionado à caixa de entrada.
  • O código é executado independentemente de como um item é adicionado à caixa de entrada. Por exemplo, se você trabalha mais tarde uma noite e arrastar uma mensagem para a sua caixa de entrada, a mensagem é encaminhada à conta de email.
  • O Outlook também possui um evento NewMail , mas esse evento é executado apenas quando você chegar uma nova notificação de email. Se você receber ao mesmo tempo três mensagens, o evento só é executado uma vez. Você pode usar o evento NewMail para garantir que seu código do Visual Basic for Applications é somente executado quando você receber novas mensagens, mas você deve adicionar lógica adicional para o código para procurar as mensagens ainda não foram lidas antes. Assim, infelizmente, ambos os eventos tendem a ter um efeito colateral indesejado:
    • O evento ItemAdd facilita a agir em todos os itens recebidos, mas também atua nos itens que você mover para a caixa de entrada por conta própria.
    • O evento NewMail não é executado quando você arrastar itens para a caixa de entrada, mas é mais difícil programar uma solução para levar em conta que existem vários itens na caixa de entrada que seu código deve agir em.

Referências

Para obter informações adicionais sobre recursos disponíveis e respostas a perguntas feitas normalmente sobre soluções do Microsoft Outlook 2000, consulte o seguinte artigo na Base de dados de Conhecimento da Microsoft:
146636 OL2000: perguntas sobre formulários personalizados e soluções do Outlook

Propriedades

ID do artigo: 235852 - Última revisão: quinta-feira, 23 de novembro de 2006 - Revisão: 3.3
A informação contida neste artigo aplica-se a:
  • Microsoft Outlook 2000
Palavras-chave: 
kbmt kbvba kbaddin kbhowto kbprogramming KB235852 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 235852

Submeter comentários