Anuncios

jueves, 21 de enero de 2021

Como enviar Correos Masivos con Archivos ADJUNTOS DIFERENTES en Excel

Aprende cómo enviar correos electrónicos o emails masivos con archivos adjuntos diferentes en excel y outlook a través de correspondencia mas pdf con archivo individual con macros el cual nos permite enviar correos electrónicos a diferentes personas con su respectivo archivo adjunto

¿Cómo enviar correos con archivos adjuntos y combinación de correspondencia?


Revisa el video para que aprendas a utilizar la macro y en la parte FINAL del articulo se encuentra el enlace para que puedas descargar la macro.




Importante que para utilizar la macro debemos de tener habilitados el menú de programador o desarrollador dependiendo de la versión de excel que tengas. En este  CORTO VIDEO te explico como lo puedes  HABILITAR


Para ejecutar la macro debemos tener en cuenta lo siguiente.


Debemos de tener un archivo de excel donde contamos con una columna que para el ejemplo es la A con el nombre del archivo y en otra columna el correo electrónico como se muestra en la imagen.


A continuación tenemos los archivos que están en PDF, aunque la macro aplica para cualquier tipo de extensión.


Los archivos anteriores fueron basados de la combinación de correspondencia entre Excel y PDF, te comparto el ENLACE para que aprendas esta herramienta.


Luego de tener en cuenta lo anterior nos vamos para la pestaña de programador y posteriormente para visual basic.


En esta ventana nos dirigimos para herramientas y referencia.




En esta ventana de referencias debemos de tener habilitado la opción de microsoft 16.0 object library. Debemos tener en cuenta que dependiendo de la versión de excel que tengamos puede ser menor el valor.


Posteriormente vamos para grabación de una macro y le vamos asignar el nombre que deseamos y para el ejemplo va ser correos y en la activación de la macro para el método abreviado para ejecutar la macro va ser la letra r


ahora vamos a presionar aceptar y luego detener grabación.


Luego nos vamos para la macro grabada y pegamos la macro que la puedes descargar en la parte inferior del articulo.



La macro para enviar correos masivos con archivos adjuntos consiste


Creamos las variables para la macro como objeto, variant,rango y texto

Dim objOutlook As Object

Dim objItem As Object

Dim objNamespace As Object

Dim ADJUNTO As Variant

Dim RangoNombre As Range

Dim RangoCorreos As Range

Dim Ruta As String

Dim Extensión As String

Dim Nombre_Archivo As String

Dim Destinatario As String

Dim Correos As String


Le asignamos la ruta donde estan los archivos que deseo enviar aquí es muy importante colocar la ruta personal.

Ruta = "C:\Users\Juan David\Desktop\Ejemplo"

La extensión aquí puede cambiar el formato del archivo

Extensión = "Pdf"


Para abrir la ventana para seleccionar el rango de nombre

Set RangoNombre = Application.InputBox("Seleccione el rango de los nombres del archivo", "RANGO", Type:=8)


Para abrir la ventana para seleccionar el rango de Correos

Set RangoCorreos = Application.InputBox("Seleccione el rango de los correos", "RANGO", Type:=8)


Obtener la primera y ultima fila del rango seleccionado y la columna

FilaInicial = RangoNombre.Row

FilaFinal = RangoNombre.Count + 1

ColumnaNombre = RangoNombre.Column


Obtener la columna de los correos

ColumnaCorreos = RangoCorreos.Column


Creamos un ciclo con fila igual a Filainicial hasta fila final

For fila = FilaInicial To FilaFinal


Asignamos los nombres de las variables para la aplicación de outlook

Set objOutlook = CreateObject("Outlook.Application")

Set objNamespace = objOutlook.GetNamespace("MAPI")

Set objItem = objOutlook.CreateItem(olMailItem)

objNamespace.Logon "EXCELSPACE", , True, True


Asignamos para la variable Nombre_Archivo la fila y la columna para obtener el nombre del archivo

Nombre_Archivo = Cells(FilaInicial, ColumnaNombre)


Asignamos para la variable Correos la fila y la columna para obtener el correo asociado

Correos = Cells(FilaInicial, ColumnaCorreos)


ADJUNTO = Ruta & "\" & Nombre_Archivo & "." & Extensión


ADJUNTO = "C:\Users\juandavid\Desktop\Ejercicio\Macroparacorreo.xlsm"


With objItem

  .Attachments.Add (ADJUNTO)

  .Display

  '.To = "quinterojdavid@hotmail.com"

  .To = Correos

  .CC = ""

  .BCC = ""


Aquí asignamos el Asunto

  .Subject = "Certificado Comercial" & "-" & Nombre_Archivo 


Asignamos el Cuerpo del mensaje

  .Body = " Amablemente adjunto el certificado Comercial" 

  .Send

End With


objNamespace.Logoff

Set objOutlook = Nothing

Set objItem = Nothing

Set objNamespace = Nothing

FilaInicial = FilaInicial + 1

Next


Luego ejecutamos la macro presionando Ctrl + r y enviamos los correos con su respectivo archivo adjunto





En el siguiente ENLACE puedes DESCARGAR la macro para enviar los correos masivos con archivos adjuntos diferentes en excel.



Seguramente quieres sabes más acerca de Excel, no te olvides darte una vuelta por las siguientes secciones disponibles para ti de manera gratuita: 


Canal de YouTube
Comunidad Telegram
Instagram: Aprende y Enseña Excel
Facebook: Aprende Excel Fácil
Twitter: Aprende y Enseña Excel


Hasta una próxima y te deseo el mayor de los EXITOS.


Aprende y Enseña Excel.