🔥 En este video te regalo una macro para poder Automatizar el envío de Correos desde Excel y Outlook, usando VBA y macros.
👉 En el tutorial también verás cómo incluir Imágenes, archivos Adjuntos, además de la Firma de correo de Outlook de Office.
Ver video Enviar emails desde Excel con firma de correo
Suscríbete al canal de EXCELeINFO en YouTube para aprender más de Excel y macros.
Cómo funciona
El ejemplo y la macro de este tutorial usaremos macros y VBA en Excel para enviar emails masivos desde una cuenta de correo configurada en Microsoft Outlook.
La cuenta configurada en Outlook puede ser de cualquier servicio de correo: Outook, Hotmail, Yahoo, Gmail, Office 365 o empresarial.
Configurar en Outlook cuentas de outlook.com, GMAIL, hotmail, OFFICE 365 y correos corporativos
Enviar correos desde Excel

Usando este proceso donde automatizamos el envío de emails desde Excel, vamos a poder hacer lo siguiente:
- Aplicar formato al texto del Cuerpo del correo.
- Incluir imágenes.
- Adjuntar archivos.
- Incluir la Firma de correo configurar en Outlook.
Código VBA de al macro
Antes de usar la macro, es necesario asegurarte de contar con lo siguiente:
- Microsoft Outlook con mínimo una cuenta configurada.
- Haber habilitado la Referencia Microsoft Outlook 16.0 Object Library (el número puede cambiar depende tu versión de Office).
- Recomendable tener una Firma de correo.
Cómo crear y configurar un FIRMA DE CORREO en Microsoft Outlook
El siguiente código debe ir en un Módulo normal
'EXCELeINFO
'MVP Sergio Alejandro Campos
'http://www.exceleinfo.com
'https://www.youtube.com/user/sergioacamposh
'
Sub EnviarEmail()
'
' Declaramos variables
'
Dim OutlookApp As Outlook.Application
Dim MItem As Outlook.MailItem
Dim CeldaCorreo As Range
Dim Asunto As String
Dim Correo As String
Dim Destinatario As String
Dim Saldo As String
Dim Msg As String
'
Set OutlookApp = New Outlook.Application
'
'Recorremos la columna EMAIL
'
For Each CeldaCorreo In Range("B11:B13")
'
'Asignamos valor a las variables
'
If CeldaCorreo.EntireRow.Hidden = True Then
Else
Asunto = "Saldo vencido"
Destinatario = CeldaCorreo.Offset(0, -1).Value
Correo = CeldaCorreo.Value
Saldo = Format(CeldaCorreo.Offset(0, 1).Value, "$#,##0")
FechaVencimiento = Format(CeldaCorreo.Offset(0, 2).Value, "dd/mmm/yyyy")
strBody = "<FONT color='blue'>" & _
"<P>Este correo es enviado desde un archivo del canal EXCELeINFO</P></FONT>" & _
"<P><B>Suscríbete para recibir los mejores videos de EXCELeINFO</B></P>" & _
"<a href='https://www.youtube.com/c/SergioAlejandroCampos' target='_BLANK'>" & _
"<img src='C:tMOS expert.PNG' eight='30%'></a>"
'
'Cuerpo del mensaje
'
Msg = "Apreciable " & Destinatario & vbNewLine & vbNewLine
Msg = Msg & "Queremos informarle que su fecha de pago venció el día "
Msg = Msg & FechaVencimiento & "." & vbNewLine & vbNewLine
Msg = Msg & "El saldo que debe liquidar es "
Msg = Msg & Saldo & vbNewLine & vbNewLine
Msg = Msg & "Atentamente:" & vbNewLine
Msg = Msg & "Tarjetas de crédito."
'
Set MItem = OutlookApp.CreateItem(olMailItem)
With MItem
.Display
.To = Correo
.Subject = Asunto
'.Body = Msg
.Attachments.Add "C:UsersSergio CamposDropboxPersonalEXCELeINFOPendientesFuncion IMAGEN - EXCELeINFO.xlsx"
.HTMLBody = Msg & strBody & .HTMLBody
.Send
'
End With
'
End If
Next
'
End Sub
Descargar el archivo de ejemplo
Enviar emails desde Excel – imágenes, adjunto, firma – EXCELeINFO.zip
👇
⭐ Si te gustó este tutorial, por favor regístrate en nuestra Lista de correo y Suscríbete a nuestro canal de YouTube para que estés siempre enterado de lo nuevo que publicamos.