Envie emails personalizados no Microsoft Excel, com a ajuda do VBA?!
Perde muito tempo a enviar emails personalizados com anexos para uma lista de emails? Então saiba que existe uma forma fácil de o fazer no Microsoft Excel, com o auxílio de código VBA.
Efetivamente, através de código VBA, conseguimos aceder ao Microsoft Outlook e enviar email para a sua lista de emails, que pode ter guardada numa tabela de Excel. Estes emails vão ter campos personalizados e pode inclusive anexar ficheiros no e-mail que pretenda enviar.
Neste tutorial vamos mostrar-lhe um exemplo, que irá enviar uma ficha de inscrição em PDF para uma lista de destinatários (formandos). O que precisa de ter pronto para começar o processo?! Apenas necessita de:
- uma tabela com os dados dos destinatários,
- um documento de modelo de email do Outlook; e
- uma pasta com os anexos que pretende enviar juntamente com o email.
Como pode preparar estes elementos:
- A tabela de dados não precisa de ter qualquer tipo de formatação. Basta registar as informações dos destinatários que pretende incluir nos emails.
- Quanto ao modelo de email, acede ao Outlook, escreve o seu email com a referência aos campos que serão personalizados e guardá-lo como “Modelo do Outlook (*oft.)”.
- Guarde também os ficheiros, que terá em anexos, numa pasta, prontos a enviar.
Cumprindo estes passos, estará pronto a começar!
Criação das variáveis no Visual Basic Editor
Como já deve ter percebido pela introdução, iremos utilizar o Visual Basic Editor para criar as variáveis, ligá-las à tabela de dados e criar os emails com os campos personalizados, pronto a enviar.
Começamos por criar um módulo, que vamos chamar “email”. Posteriormente, damos início à criação da nossa rotina, denominada por “EmailPersonalizado ()”, que não é, nada mais, nada menos, do que um Ciclo (Loop). Este ciclo funciona ao iterar uma tabela e obter os seus valores, que são transportados para os campos do texto do email, que serão personalizados. Simples e dinâmico, certo?!
Early Binding
O primeiro passo é, através do método early binding, integrar os objetos do Outlook para que possam ser utilizados como referência. Este processo é bem simples de se fazer.
Primeiro, com o método early binding, faz-se referência à biblioteca do Outlook para que se possam utilizar os seus objetos.
Acede ao “Menu Tools”, depois “References” e “Microsoft Outlook 16.0 Object Library”.
Uma nota: neste método, quando passa a rotina para alguém que não tenha a referencia a esta biblioteca (Outlook) com estes objetos, ela não irá funcionar. Pelo que, no final do tutorial, tenho um extra, em que lhe mostro como, através do método late binding, pode solucionar esta desvantagem.
Posto isto, procedemos agora à definição real das variáveis que vão representar os vários objetos e valores que vamos utilizar no nosso email.
Os passos serão os seguintes:
- Definir variáveis do objeto Outlook (Early Binding);
- Definir variável para o Modelo de Mail;
- Definir variáveis para obter dados da tabela;
- Definir outras variáveis: formatar data, iteradores de tabela e última linha;
- Definir variável para substituir o texto
Acompanhe o tutorial para ver passo a passo.
Definir o Ciclo (Loop)
Depois de tudo bem definido, estamos prontos para definir o nosso Ciclo (Loop). Através de código VBA obtém-se os valores de cada célula da tabela.
Importante é também atribuir a variável que permite iniciar o Outlook (OlApp). Também devemos atribuir a variáveis para criar o email em Loop (sempre que reinicia o ciclo, ele atribui um novo email).
No novo email cria-se o texto com os elementos para tornar personalizável. Fazer a substituição de valores. Através da criação de variáveis vai se substituir os campos que se quer que sejam variáveis.
Definir propriedades do novo email
Abrimos um contentor “With” e colocam-se os campos a ser substituídos. Definimos também para onde será enviado o email, onde o texto será inserido e ainda o assunto personalizado para cada novo email.
Vamos também adicionar os anexos e mais alguns pormenores que automatizam o processo o mais possível (Display, Save).
No final deste tutorial, estamos prontos para testar a rotina. O Visual Basic Editor irá correr todas as variáveis, criar o email e no final, passa para o próximo valor. Et voilá, está pronto para enviar os seus emails com campos personalizados e com anexos de forma automática e simples!
Não perca este novo vídeo e torne a comunicação mais dinâmica e automática! Envie-nos uma mensagem com a sua opinião, e diga-me qual função ou funcionalidade do Visual Basic Editor que gostaria de ver analisada mais detalhadamente!
Vídeos semelhantes:
Power Apps: Tirar uma foto e arquivar o ficheiro
Neste novo vídeo, utilizamos a integração do Power Apps com o Power Automate para ligar ao OneDrive e armazenar a imagem capturada numa pasta. Vamos lá?
XLOOKUP (PROCX) - Uma pesquisa mais completa!
Já reparou que o Microsoft Excel lançou uma nova função de pesquisa?! Trata-se da função XLOOKUP (PROCX), que vem...