Aprendendo como enviar Email com VBA usando o Excel

Olá Amigos,

Venho mais esta postagem que tenho certeza que lhe ajudará muito em suas rotinas diárias.

Aprendendo como enviar Email com VBA usando o Excel

Muitas vezes estamos preparando um relatório e necessitamos enviar este por email, é muito trabalhoso ter te ficar procurando nos itens enviados o último relatório para ter de replicar novamente aos destinatários.

Para evitar isso, temos a rotina abaixo que permite que você configure o envio diretamente do arquivo em que se está trabalhando.

É possível configurar os campos de destinatários, com cópia, com cópia oculta, qual será o título do Email, o texto que irá no corpo do e-mail.

DICA: Aprendendo VBA – Como deixar um formulário ficar com tela cheia!?

Também é possível configurar se o email por VBA será enviado diretamente ou se o email VBA será exibido na sua tela.
Por padrão neste código colocamos para o e-mail VBA ser exibido através do propriedade .Display.

Código:

[vb]

Sub Envio()

Dim OutApp As Outlook.Application
Dim OutMail As Outlook.MailItem

‘Criação e chamada do Objeto Outlook
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(olMailItem)

Application.DisplayAlerts = False

With OutMail

.To = "douglas@douglasgodoy.com.br "
.CC = ""
.BCC = ""
.Subject = "Este é um e-mail de teste"
.HTMLBody = "Caros, este é um email de teste!"

‘O trecho abaixo anexa a planilha ao e-mail
.Attachments.Add ActiveWorkbook.FullName

.Display ‘Ou .Send para enviar direto

End With

Application.DisplayAlerts = True

‘Resetando a sessão
Set OutMail = Nothing
Set OutApp = Nothing

End Sub

[/vb]

Implementação:

1 – Abra um novo documento no Microsoft Excel.
2 – Aperte Alt + F11 para acessar o console de Macros.
3 – Clique em inserir novo módulo.
4 – Após inserir o novo módulo copie e cole o código abaixo.

novo modulo vba

5- EM CASO DE ERRO AO EXECUTAR O CÓDIGO:
Se você executar o código após isso será exibido o seguinte erro.

Erro email

Este erro ocorre pois na rotina que estamos criando fazemos referencia ao Objeto Outlook.Application, para corrigir este erro temos de seguir os passos a seguir, e referenciar o objeto em nosso projeto.

6 – ATIVE AS REFERÊNCIAS: Clique em Ferramentas ou Tools.
Referencias VBA

7 – Após isso será exibida a janela abaixo, onde você deverá procurar por “Microsoft Outlook 14.0 Object Library”
Lembrando que pode variar conforme a versão do seu Excel, 14.0 ou 15.0 ou assim por diante.

Referencias-EMAIL

Importante:

Após realizar a criação do módulo, ativar a referência a biblioteca do Outlook você poderá utilizar o código para enviar emails diretamente do excel com VBA.

Aguardo seus comentários!

Douglas Godoy

Comentários