VBA Outlook - Como enviar e-mails do Outlook usando código VBA?

Índice

Vimos o VBA no Excel e como automatizamos nossas tarefas no Excel com a criação de macros, no Microsoft Outlook também temos uma referência para VBA e com a qual podemos controlar o Outlook usando o VBA, isso torna nossas tarefas repetidas no Outlook mais fáceis de automatizar, e semelhante ao Excel, precisamos habilitar o recurso do desenvolvedor para usar o VBA no Outlook.

VBA Outlook

A beleza do VBA é que podemos fazer referência a outros objetos da Microsoft, como PowerPoint, Word e Outlook. Podemos criar belas apresentações. Podemos trabalhar com documentos do Microsoft Word e, finalmente, podemos enviar os e-mails também. Sim, você ouviu direito. Podemos enviar e-mails do próprio Excel. Isso parece estranho, mas ao mesmo tempo coloca um sorriso em nosso rosto também. Neste artigo, vou mostrar como trabalhar com o objeto do Microsoft Outlook do Excel usando a codificação VBA. Leia…

Como referenciamos o Outlook a partir do Excel?

Lembre-se de que o Outlook é um objeto e precisamos definir a referência a ele na biblioteca de referência de objeto. Para definir o objeto do Outlook para referência, siga as etapas abaixo.

Etapa 1: Vá para o Editor do Visual Basic.

Etapa 2: Vá para Ferramentas> Referência.

Etapa 3: Nas referências abaixo, biblioteca de objetos, role para baixo e selecione “MICROSOFT OUTLOOK 14.0 OBJECT LIBRARY”.

Marque a caixa “MICROSOFT OUTLOOK 14.0 OBJECT BIBRARY” para torná-la disponível para Excel VBA.

Agora podemos acessar o objeto Outlook do VBA no Excel.

Escreva um código para enviar e-mails do VBA Outlook do Excel

Podemos enviar os e-mails do Excel através do aplicativo Outlook. Para isso, precisamos escrever códigos VBA. Siga as etapas abaixo para enviar os e-mails do Outlook.

Etapa 1: crie um subprocedimento.

Código:

Option Explicit Sub Send_Exails () End Sub

Etapa 2: Defina a variável como VBA Outlook.Application .

Código:

Option Explicit Sub Send_Exails () Dim OutlookApp As Outlook.Application End Sub

Etapa 3: A variável acima faz referência ao aplicativo VBA Outlook. No outlook, precisamos enviar e-mails, então defina outra variável como Outlook.MailItem.

Código:

Option Explicit Sub Send_Exails () Dim OutlookApp As Outlook.Application Dim OutlookMail As Outlook.MailItem End Sub

Etapa 4: Agora, ambas as variáveis ​​são variáveis ​​de objeto. Precisamos defini-los. Primeiro, defina a variável “OutlookApp” como Novo Outlook.Application .

Código:

Sub Send_Exails () Dim OutlookApp As Outlook.Application Dim OutlookMail As Outlook.MailItem Set OutlookApp = New Outlook.Application End Sub

Etapa 5: Agora, defina a segunda variável, “OutlookMail”, conforme abaixo.

Definir OutlookMail = OutlookApp.CreateItem (olMailItem)

Código:

Sub Send_Exails () Dim OutlookApp As Outlook.Application Dim OutlookMail As Outlook.MailItem Set OutlookApp = Novo Outlook.Application Set OutlookMail = OutlookApp.CreateItem (olMailItem) End Sub

Etapa 6: Agora, usando com acesso à instrução VBA Outlook Mail.

Código:

Sub Send_Exails () Dim OutlookApp As Outlook.Application Dim OutlookMail As Outlook.MailItem Set OutlookApp = Novo Outlook.Application Set OutlookMail = OutlookApp.CreateItem (olMailItem) Com OutlookMail End With End Sub

Agora podemos acessar todos os itens disponíveis com itens de e-mail como “Corpo do e-mail”, “Para”, “CC,” “BCC”, “Assunto” e muito mais.

Etapa 7: agora, dentro de com a instrução, podemos ver a lista do IntelliSense colocando um ponto .

Etapa 8: Primeiro, selecione o formato do corpo como olFormatHtml .

Código:

Com OutlookMail .BodyFormat = olFormatHTML End With

Etapa 9: Agora exiba o e-mail.

Código:

Com OutlookMail .BodyFormat = olFormatHTML .Display End With

Etapa 10: Agora, precisamos escrever o e-mail no corpo do e-mail. Para isso, selecione HtmlBody .

Código:

Com OutlookMail .BodyFormat = olFormatHTML .Display .HTMLBody = "Escreva seu e-mail aqui" Fim com

Abaixo está o exemplo do corpo da redação do e-mail.

Etapa 11: Depois de escrever o e-mail, precisamos mencionar o id do e-mail do destinatário. Para este acesso, “ Para .”

Etapa 12: a seguir, mencione para quem você deseja copiar o e-mail.

Step 13: Now mention the BCC email ids,

Step 14: Next thing is we need to mention the subject for the email we are sending.

Step 15: Now add attachments. If you want to send the current workbook as an attachment, then use the attachment as This workbook.

Step 16: Finally, send the email by using the Send method.

Now, this code will send the email from your VBA outlook mail. Use the below VBA code to send emails from your outlook.

To use the below code, you must set the object reference to “MICROSOFT OUTLOOK 14.0 OBJECT LIBRARY” under the object library of Excel VBA.

By setting the reference to the object, the library is called early binding. The reason why we need to set the reference to object library because without setting the object library as “MICROSOFT OUTLOOK 14.0 OBJECT LIBRARY,” We cannot access the IntelliSense list of VBA properties and methods. This makes the writing of code difficult because you need to be sure of what you are writing in terms of technique and spellings.

Sub Send_Emails () 'Este código é vinculado anteriormente, por exemplo, em Ferramentas> Referência> Você verificou "MICROSOFT OUTLOOK 14.0 OBJECT LIBRARY" Dim OutlookApp As Outlook.Application Dim OutlookMail As Outlook.MailItem Definir OutlookApp = Novo Outlook.Application Definir OutlookMail = OutlookApp. CreateItem (olMailItem) Com OutlookMail .BodyFormat = olFormatHTML .Display .HTMLBody = "Dear ABC" & "
" & "
" & "Encontre o arquivo anexado" & .HTMLBody 'last .HTMLBody inclui assinatura do Outlook. ''
inclui quebras de linha em duas linhas .To = "[email protected]" .CC = "[email protected]" .BCC = "[email protected]; [email protected]" .Subject = " Test mail ".Attachments = ThisWorkbook .Send End With End Sub

Artigos interessantes...