Como gerar PDF no Excel com VBA e enviá-lo por e-mail automaticamente em 3 passos

Aprenda a gerar PDF no Excel com VBA a partir de uma planilha e enviá-lo automaticamente por e-mail. Automatize seus relatórios com facilidade!

Gerar PDF no Excel com VBA pode facilitar muito o seu trabalho, especialmente se você lida com relatórios e documentos no Excel que precisam ser convertidos para PDF e enviados por e-mail. Fazer isso manualmente pode ser um processo chato e repetitivo. Felizmente, com VBA, você pode automatizar essa tarefa e economizar tempo. Neste artigo, vou te mostrar como criar um código para gerar um PDF a partir de uma planilha no Excel e enviá-lo automaticamente pelo Outlook.

Se você ainda não sabe por onde começar com VBA, confira o artigo “Como Preparar o Excel para VBA e Criar sua Primeira Macro em 4 Passos“. Depois, retorne aqui para continuar.

Passo 1: Criando o código VBA para exportar a planilha como PDF

Antes de enviar o e-mail, precisamos converter a planilha em um arquivo PDF. Para isso, usamos o método ExportAsFixedFormat do Excel. Veja um exemplo de código:

Sub GerarPDF()  
    Dim ws As Worksheet  
    Dim caminhoArquivo As String  
    
    Set ws = ThisWorkbook.Sheets("Relatorio") ' Altere para o nome da sua planilha  
    caminhoArquivo = ThisWorkbook.Path & "\Relatorio.pdf"  
    
    ws.ExportAsFixedFormat Type:=xlTypePDF, Filename:=caminhoArquivo, Quality:=xlQualityStandard, _  
        IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False  
    
    MsgBox "PDF gerado com sucesso!", vbInformation  
End Sub  

Esse código pega a planilha “Relatorio”, exporta como um PDF e salva no mesmo diretório do arquivo Excel. Isso é essencial para quem deseja gerar PDF no Excel com VBA de forma automática.

Passo 2: Criando o código VBA para enviar o PDF por e-mail

Agora que temos o arquivo PDF, podemos criar um código para enviá-lo automaticamente por e-mail usando o Outlook.

Sub EnviarEmail()  
    Dim OutlookApp As Object  
    Dim EmailItem As Object  
    Dim caminhoArquivo As String  
    
    caminhoArquivo = ThisWorkbook.Path & "\Relatorio.pdf"  
    
    Set OutlookApp = CreateObject("Outlook.Application")  
    Set EmailItem = OutlookApp.CreateItem(0)  
    
    With EmailItem  
        .To = "destinatario@empresa.com"  ' Substitua pelo e-mail desejado  
        .Subject = "Relatório Automático"  
        .Body = "Segue em anexo o relatório gerado automaticamente pelo Excel."  
        .Attachments.Add caminhoArquivo  
        .Send  
    End With  
    
    MsgBox "E-mail enviado com sucesso!", vbInformation  
End Sub  

Esse código cria um novo e-mail no Outlook, anexa o arquivo PDF e o envia para o destinatário especificado. Com isso, conseguimos gerar PDF no Excel com VBA e enviá-lo automaticamente sem necessidade de intervenção manual.

Passo 3: Criando um botão no Excel para facilitar a automação

Agora que temos o código pronto, podemos adicionar um botão para executar a macro facilmente. Para isso:

  1. Acesse a guia “Desenvolvedor” no Excel.
  2. Clique em “Inserir” e escolha um botão de formulário.
  3. Associe o botão à macro GerarPDF.
  4. Adicione outro botão e vincule à macro EnviarEmail.

Agora, sempre que precisar gerar e enviar um relatório, basta clicar nos botões! A automação para gerar PDF no Excel com VBA está pronta para uso.

VBA e Macros – Automação Inteligente para Economizar Tempo e Maximizar Resultados

Quer dominar o Excel e automatizar tarefas repetitivas? Com este guia best-seller, você aprenderá a criar macros, desenvolver automações e construir aplicações poderosas. Explore técnicas avançadas para tabelas dinâmicas, consultas web e integração com bancos de dados.
👉 Garanta o seu aqui!

Conclusão

Automatizar a geração de PDFs e o envio por e-mail no Excel com VBA é uma solução prática para quem trabalha com relatórios recorrentes. Com poucos cliques, é possível agilizar processos, reduzir erros manuais e aumentar a produtividade. Agora que você sabe como gerar PDF no Excel com VBA e enviá-lo por e-mail, sua rotina de trabalho ficará muito mais eficiente.

Agora é sua vez de testar! Se esse tutorial foi útil, compartilhe com seus colegas e aproveite para explorar outras dicas de automação no Excel com VBA. 🚀

Comentários

0 0 votos
Classificação do artigo
Inscrever-se
Notificar de
guest
0 Comentários
mais antigos
mais recentes Mais votado
Feedbacks embutidos
Ver todos os comentários

Outros Artigos e Tutoriais

Sobre o Autor

Desenvolvedor por formação, solucionador de problemas por profissão e apaixonado por compartilhar conhecimento.

Sigam-me os Bons!

Siga-me nas redes sociais e participe da nossa comunidade de aprendizado!

newsletter

Aprenda no seu ritmo. Inscreva-se e receba materiais que fazem diferença.

0
Adoraria saber sua opinião, comente.x

Obrigado por essa dose de cafeína para o blog! 🍵

Com um café, você ajuda a manter as ideias quentes, os códigos rodando e o conteúdo fresquinho no ar.