Enviar emails a varios destinatarios desde excel usando gmail

Tengo un cuadro con información de proveedores y quiero enviar un email con un click a cada uno enviándoles el valor de la columna que le corresponde. (Su pago efectuado). La idea es usar gmail de preferencia.

Columna A= nombre proveedor

Columna B=monto a pagar

Columna C=moneda

Columna D=email del proveedor

Respuesta

Antes de volverte loco buscando el error (y por si alguien más intenta hacer esto mismo y lee esta consulta) echadle un vistazo a esto: https://support.google.com/accounts/answer/6010255?hl=es 

Permitir que las aplicaciones menos seguras accedan a tu cuenta

Google puede bloquear intentos de inicio de sesión de algunas aplicaciones o dispositivos que no utilicen los estándares de seguridad modernos. Como es más fácil acceder sin autorización a dichos dispositivos y aplicaciones, tu cuenta estará más protegida si los bloqueas.

A continuación, se muestran algunos ejemplos de aplicaciones que no admiten la última versión de los estándares de seguridad:

  • La aplicación Mail para iPhone o iPad con iOS 6 o versiones anteriores,
  • la aplicación Mail en un teléfono con una versión de Windows Phone anterior a la 8.1,
  • algunos clientes de correo electrónico para ordenadores, como Microsoft Outlook y Mozilla Thunderbird.

Y macros de excel <- esto lo añado yo

1 respuesta más de otro experto

Respuesta
2

H o l a:

Te anexo la macro para enviar correos por Gmail.

Realiza lo siguiente para poner en funcionamiento la macro:

1. No me queda claro que va en el asunto del correo, así que cambia esto en la macro:

 .Subject = "Escribir aquí el asunto del correo"

2. Tampoco me queda claro que lleva el cuerpo del correo, te puse un ejemplo en esta parte:

            .TextBody = "Proveedor: " & Cells(i, "A") & " Monto a pagar: " & Cells(i, "B") & " " & Cells(i, "C")

3. Pon tu cuenta de correo de Gmail y password en esta parte:

    correo = "[email protected]"
    passwd = "PASSWORD"

4. Configura lo siguiente en tu gmail:

'Permitir que aplicaciones menos seguras accedan a tu cuenta
'Aplicaciones menos seguras
'Activar

5. En el Menú VBA, Herramientas, Referencias, Microsoft CDO for windows 2000 Library


6. Pon la siguiente macro en un módulo:

Sub EnviarCorreosPorGmail()
'Por.Dante Amor
    Dim Email As CDO.Message
    '
    correo = "[email protected]"
    passwd = "PASSWORD"
    '
    For i = 2 To Range("A" & Rows.Count).End(xlUp).Row
        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 = Cells(i, "D")
            .From = correo
            .Subject = "Escribir aquí el asunto del correo"
            .TextBody = "Proveedor: " & Cells(i, "A") & " Monto a pagar: " & Cells(i, "B") & " " & Cells(i, "C")
            .Configuration.Fields.Update
            On Error Resume Next
            .Send
        End With
        If Err.Number = 0 Then
            Cells(i, "F") = "El mail se envió con éxito"
        Else
            Cells(i, "F") = "Se produjo el siguiente error: " & Err.Number & " " & Err.Description
        End If
        Set Email = Nothing
        On Error GoTo 0
    Next
End Sub

Sigue las Instrucciones para un botón y ejecutar la macro

  1. Abre tu libro de Excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. En el menú elige Insertar / Módulo
  4. En el panel del lado derecho copia la macro
  5. Ahora para crear un botón, puedes hacer lo siguiente:
  6. Inserta una imagen en tu libro, elige del menú Insertar / Imagen / Autoformas
  7. Elige una imagen y con el Mouse, dentro de tu hoja, presiona click y arrastra el Mouse para hacer grande la imagen.
  8. Una vez que insertaste la imagen en tu hoja, dale click derecho dentro de la imagen y selecciona: Tamaño y Propiedades. En la ventana que se abre selecciona la pestaña: Propiedades. Desmarca la opción “Imprimir Objeto”. Presiona “Cerrar”
  9. Vuelve a presionar click derecho dentro de la imagen y ahora selecciona: Asignar macro. Selecciona: EnviarCorreosPorGmail
  10. Aceptar.
  11. Para ejecutarla dale click a la imagen.


' : )
'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias
' : )

Hola me marca el siguuente error:

Se produjo el siguiente error:- 2147220973 the transport failed to coonect to the server

¿Pusiste tu usuario de gmail y el password de gmail dentro de la macro?

Así es, te comparto el file si me das tu email por favor?

[email protected]

Pablo

Como te darás cuenta el proceso de enviar correos por Gmail es delicado, tienes que revisar todas las configuraciones que te puse.

Envíame tu archivo con la macro.

Mi correo [email protected]

En el asunto del correo escribe tu nombre de usuario “tezcu” y el título de esta pregunta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas