Buen día. Necesito de una forma de enviar mails masivos,a través de gmail con un adjunto pdf distinto para cada mail

He visto que hay varias macros, pero mi conocimiento sobre esto es muy básico y la verdad no he podido entender como se hace, si hay alguien que me pueda ayudar estaré muy agradecido

1 respuesta

Respuesta
1

Te anexo la macro para enviar varios correos, a varios destinatarios con adjunto diferente:

Sub Enviar_Correos_Gmail()
'---
'   Por.Dante Amor
'---
    '***Macro Para enviar correos por Gmail
    correo = "[email protected]"                 'correo gmail
    passwd = "pwd"                              'tu password
    '
    col = Range("H1").Column
    For i = 2 To Range("B" & Rows.Count).End(xlUp).Row
        Application.DisplayAlerts = False
        Application.ScreenUpdating = False
        ruta = ThisWorkbook.Path & "\"
        '
        Dim Email As CDO.Message
        Set Email = New CDO.Message
        Email.Configuration.Fields(cdoSMTPServer) = "smtp.gmail.com"
        Email.Configuration.Fields(cdoSendUsingMethod) = 2
        With Email.Configuration.Fields
            .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = CLng(465)
            .Item("http://schemas.microsoft.com/cdo/" & "configuration/smtpauthenticate") = Abs(1)
            .Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 30
            .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = correo
            .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = passwd
            .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
        End With
        With Email
            .To = Range("B" & i).Value           'Destinatarios
            .From = correo
            .Subject = Range("E" & i).Value      '"Asunto"
            .TextBody = Range("F" & i).Value     '"Cuerpo del mensaje"
            archivo = Range("H" & i).Value       'archivo
            If archivo <> "" Then
                If Dir(archivo) <> "" Then
                    .AddAttachment archivo
                End If
            End If
            .Configuration.Fields.Update
            On Error Resume Next
            .Send
        End With
'        If Err.Number = 0 Then
'            MsgBox "El mail se envió con éxito"
'        Else
'            MsgBox "Se produjo el siguiente error: " & Err.Number & " " & Err.Description
'        End If
        Set Email = Nothing
    Next
    MsgBox "Correos enviados", vbInformation, "SALUDOS"
End Sub

Puedes descargar el archivo ejemplo desde este enlace:

Correos por Gmail


.

. S aludos. Dante Amor. Si es lo que necesitas R ecuerda valorar la respuesta. G racias

.

¡Gracias! fuiste de gran ayuda

Ya pude enviar los mails, pero no envía el adjunto, ¿qué debo cambiar?

En la columna H tienes que poner completo, la carpeta y el nombre del archivo con todo y extensión

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas