VBA – Endereço de e-mail diferente para o destinatário retornar ao escolher responder e-mail.

Olá amigos,

Recebi um e-mail do amigo e leitor Silvio Júnior na qual o mesmo precisava de uma solução para uma situação:

Gostaria de inserir um endereço padrão de e-mail para o destinatário retornar ao escolher responder no e-mail recebido.

Ocorre que por padrão o Microsoft Outlook ou qualquer outro cliente de e-mail tem por característica preencher o campo de resposta com o e-mail que foi o remetente da mensagem, isso torna-se um problema quando enviamos uma mensagem através de um e-mail do sistema, e-mails de grupos ou e-mails genéricos.

Para resolver esta situação temos com ter o e-mail remetente e também escolher qual será o e-mail a ser preenchido quando o usuário clicar em responder.

[codigo]

Sub Email_Reply()

Dim appOutlook As Object
Dim olMail As Object

On Error Resume Next
Set appOutlook = GetObject(, “Outlook.Application”)
If appOutlook Is Nothing Then
Set appOutlook = CreateObject(“Outlook.Application”)
End If
On Error GoTo 0

Set olMail = appOutlook.CreateItem(0)

With olMail

‘Destinatário do e-mail.
.To = “douglas@douglasgodoy.com.br”

‘E-mail que receberá a resposta.
.ReplyRecipients.Add “email@example.com”

‘Título do e-mail
.Subject = “Teste de e-mail”

‘Conteúdo do e-mail.
.HTMLBody = “Olá,<br><br>” & _
“Este é um teste de e-mail <br><br>” & _
“Douglas Godoy”

‘.Display mostra o e-mail e .Send envia direto.
.Display ‘ou .Send
End With

End Sub

[/codigo]

Clique aqui e faça Download do aquivo com o código.

Com este arquivo espero ajudar as pessoas que tem dúvidas relacionadas ao tema e que você tenha pelo menos um norte para iniciar seus trabalhos no que refere-se a configuração de endereço padrão de e-mail para o destinatário retornar ao escolher responder e-mail com VBA.

Agradeço pela leitura e fico no aguardo de seus comentários e sugestões.

Um abraço. DG

Comentários

  • Roberto
    Responder

    Obrigado pelo artigo, procurei muito por isso!

    Os artigos tem me ajudado muito.

    Abraço.

  • Pablo da Silva
    Responder

    Obrigado pelo código cara, era o que estava precisando…
    Parabéns pelo iniciativa e compartilhamento de informações…

    Pablo da Silva

  • Gina
    Responder

    Bom esse blog, bom o assunto.

    • Douglas Godoy

      Olá Gina,

      Muito obrigado!
      Volte sempre ao nosso Blog.

      Abraços.

  • Anderson
    Responder

    Doulas boa noite,
    Gostaria de criar uma planilha que enviasse e-mail automático para o outlook toda vez que faltar 10 dias antes da data do vencimento

  • Silvio Júnior
    Responder

    Douglas, boa noite.

    Primeiramente muito obrigado por ter dedicado um tempo para meu questionamento.
    Acredito que a variavel .ReplyRecipients.Add é a que estou precisando.

    Agradeço imensamente sua atenção.

    Em minhas garimpagens encontrei a variável de validade da mensagem .ExpiryTime = DateAdd(“d”, 6, Now) para a data de expiração da mensagem.

    Vou testar a solução completa agora e creio que o planejado vai ficar pronto.

    Parabéns pela movimentação do site.

    O número de mensagens só confirma a confiança que aqueles que usam seus exemplos sentem-se ajudados pela sua competência no assunto e acreditam que a mesma linha de raciocínio que procuram encontram em suas soluções.

    Muito Obrigado

    Silvio Júnior