Te dejo un código que sirve para enviar correos desde Excel mediante macros.
Sub EnviaCorreo()
On Error GoTo Err_EnviaCorreo
Dim OutApp As Object
Dim OutMail As Object
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
With OutMail
.To = "[email protected]"
.CC = ""
.BCC = ""
.Subject = "Cotización"
.Body = "Estimado José Saúl Le envío la cotización solicitada"
.Attachments.Add ("C:\Cotizacion.pdf")
.Send
End With
On Error GoTo 0
Set OutMail = Nothing
Set OutApp = Nothing
Exit_EnviaCorreo:
Exit Sub
Err_EnviaCorreo:
MsgBox "Se encontró un excepción " & Err.Number & " - " & Err.Description
Resume Exit_EnviaCorreo
End Sub
Espero te sea de utilidad.
Puedes usar parámetros para optimizar la macro, también toma en cuenta que cada que envíes un correo Outlook, te mostrará un mensaje de seguridad.