Cómo enviar correos electrónicos utilizando una macro VBA en Excel

Aquí es un método para cómo enviar correos electrónicos utilizando una macro VBA en Excel. En este post, no voy a ir a través de una guía paso a paso sobre cómo el envío de mensajes de correo electrónico utilizando Excel es posible el uso de macros y opciones de VBA en Microsoft Excel.

Esto es porque la plantilla de hoja de cálculo que me gustaría compartir fue creado para un propósito muy específico, y es poco probable que sea útil para el lector del blog promedio.

Lo que me gustaría hacer en su lugar es darle un ejemplo de por qué y cómo necesitaba para enviar mensajes de correo electrónico (con archivos adjuntos) utilizando Excel. Esto tal vez podría ser una inspiración para usted para hacer algún proceso con su flujo de trabajo o colegas más eficiente.

Aprendí la fórmula básica de la plantilla de este video de YouTube a continuación.

enviar correos electrónicos con un archivo adjunto desde la lista de Excel

Explicaré cómo utilicé la plantilla que se detalla en el vídeo anterior, y la utilicé para realizar la tarea que necesitaba automatizar.

Lo que necesitaba que hiciera la macro por mí

Lo que necesitaba hacer era lo siguiente.

Desde una base de datos, puedo descargar informes de ventas por separado para cada país. También puedo descargar los datos (que contiene los visitantes del sitio web, los clientes potenciales y las ventas) en una tabla en Excel.

Abajo está la tabla con los datos (los datos actualmente en allí son todos los números aleatorios generados por la fórmula =RANDBETWEEN()).

Una hoja de cálculo de Excel que muestra información de ventas y marketing. Cómo enviar correos electrónicos utilizando una macro VBA en Excel

Necesitaba una manera de copiar y pegar la tabla en una hoja de Excel, que luego crearía automáticamente correos electrónicos únicos para 23 oficinas de ventas diferentes.

Cada correo electrónico único tendría que resumir el rendimiento de la Oficina de Ventas y tener un archivo adjunto de correo electrónico único.

Terminé con una plantilla de correo electrónico a continuación.

La información en una hoja de cálculo que permite enviar correos electrónicos en Excel. Cómo enviar correos electrónicos utilizando una macro VBA en Excel

Luego creé una macro VBA en Excel. El texto de la macro está abajo.

Sub Send_email_fromexcel()Dim edress As StringDim subj As StringDim message As StringDim filename As StringDim outlookapp As ObjectDim outlookmailitem As ObjectDim myAttachments As ObjectDim path As StringDim lastcol As IntegerDim attachment As StringDim x As Integer x = 2Do While Sheet7.Cells(2, x) <> "" Set outlookapp = CreateObject("Outlook.Application") Set outlookmailitem = outlookapp.createitem(0) Set myAttachments = outlookmailitem.Attachments path = Sheet7.Cells(5, x) edress = Sheet7.Cells(2, x) cc = Sheet7.Cells(3, x) subj = Sheet7.Cells(4, x) filename = Sheet7.Cells(6, x) attachment = path + filename outlookmailitem.to = edress outlookmailitem.cc = cc outlookmailitem.bcc = "" outlookmailitem.Subject = subj outlookmailitem.body = Sheet7.Cells(7, x) myAttachments.Add (attachment) outlookmailitem.display outlookmailitem.send lastcol = lastcol + 1 edress = "" x = x + 1LoopSet outlookapp = NothingSet outlookmailitem = NothingEnd Sub
Ver macros en Microsoft Excel. Cómo enviar correos electrónicos utilizando una macro VBA en Excel

He proporcionado la plantilla del archivo de Excel si desea experimentar y practicar el uso del archivo.

Desgraciadamente he tenido que eliminar la macro del archivo, ya que no puedo subir un archivo .xlsm a este sitio de WordPress.

Descarga la plantilla del archivo de Excel

Descarga el archivo de la plantilla haciendo clic en el siguiente enlace:

¡Espero que este post haya sido útil para aquellos interesados en automatizar algunas tareas que involucran a Excel y Outlook!

Mis otras entradas del blog

Si te ha gustado este post puede que disfrutes de estas otras entradas del blog que he escrito.

Cómo combinar campos de cadena en Google Data Studio
Cómo mapear el crecimiento en las sesiones de Google Analytics por país en Data Studio
Comparando Ciudad del Cabo y Toronto
Cómo utilizar DATE_DIFF en Google Data Studio para calcular las sesiones por día
Cómo cambiar el tamaño y el color de la burbuja en un mapa de Google Data Studio utilizando parámetros
Cómo combinar datos de dos conjuntos de datos públicos de BigQuery utilizando SQL
Mapeo de provincias canadienses y estados de EE.UU. en Google Data Studio
Cómo cambiar las métricas del mapa de Google usando un parámetro en Data Studio

Soy Michael

Soy un analista digital sudafricano que vive en Toronto, Canadá. Escribo un blog sobre marketing digital, analítica web y visualización de datos.
¡Ponte en contacto conmigo!
LinkedIn
Twitter
Email

Deja una respuesta

Tu dirección de correo electrónico no será publicada.