Publipostage en passant par Gmail

Bonjour à tous.

J'ai (grâce à vous) un petit programme qui me permet d'envoyer un email avec la pièce jointe adaptée à chaque destinataire... le tout en se connectant à ma boite Gmail.

Cependant j'ai lu un article il y a quelques jours qui disaient que désormais Google empêchait l'utilisateur de se connecter grâce à des applications "moins sécurisées".
Existe-t-il un moyen de continuer à utiliser mon programme? Si ce n'est pas le cas, quelles sont les alternatives? Est-ce que je peux continuer à le faire en passant par une adresse mail Yahoo par exemple? Et si oui, que dois-je adapter dans mon code (que je vous joins ci-dessous)?

Je me rends compte qu'il y a beaucoup de questions et sous-questions dans ma demande... mais je suis preneur du moindre indice, du moindre lien.

Merci pour le temps que vous pourrez me consacrer.

Private Sub EnvoieMailGoogle()

    Set mConfig = CreateObject("CDO.Configuration")

    expediteur = "xxxxxxxx@gmail.com" ' à adapter
    With mConfig.Fields
        .Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "smtp.gmail.com"
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 465
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate") = 1
        .Item("http://schemas.microsoft.com/cdo/configuration/sendusername") = expediteur
        .Item("http://schemas.microsoft.com/cdo/configuration/sendpassword") = "password"
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpusessl") = True
        .Item("http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout") = 10
        .Update
    End With

    With ActiveSheet
        dl = .Cells(Rows.Count, 2).End(xlUp).Row
        For i = 5 To dl 'liste commence en ligne 5
            If .Cells(i, 1) <> "" Then
                Set ml = CreateObject("CDO.Message")
                ml.Configuration = mConfig
                ml.To = .Cells(i, 4) 'destinataire
                ml.from = expediteur
                ml.Subject = .Range("C2") 'sujet
                ml.textbody = .Range("D2") 'message
                ml.addattachment rep & .Cells(i, 5).Value 'fichier joint
                ml.send 'envoyer le mail
            End If
        Next i
        MsgBox "Mails envoyés"
    End With

End Sub

Salut tout le monde.

Je me permets de revenir vers vous car je n'ai rien trouvé qui puisse me mettre sur le bon chemin.

Si vous n'avez pas trop de temps à m'accorder, sachez que je suis preneur du moindre lien... ou du moindre début de solution.

Merci à quiconque pourra me donner un petit coup de main.

Bonjour,

Depuis que Google a renforcé la sécurité sur l'utilisation d'applications tierces en juin 2022, il n'est plus possible d'utiliser la classe CDO avec un compte Gmail. Une alternative possible est d'utiliser la propriété MailEnveloppe avec OutLook Windows disponible dans Windows 10-11 (à ne pas confondre avec le OutLook de la suite Office). Il suffit d'enregistrer le compte Gmail dans Outlook Windows et d'en faire le compte par défaut.

Bonjour thev.
Merci pour ta réponse. Cependant je ne comprends pas ce que tu veux dire .
PS : je n'y connais absolument rien au code VBA...

Bonjour,

Je vais donc faire court.

Plus possible avec GMail depuis juin 2022 et peut être encore possible avec Yahoo : à tester.

Merci pour ta réponse.

Je vais donc me diriger vers Yahoo 👍

je me permets de revenir sur ce problème que j'ai eu et que j'ai résolu de la sorte :

Il faut passer par la validation en 2 étapes de Gmail

Gmail génère un mot de passe pour applications qu'on se note bien quelque part et qu'on va attribuer à l'application messagerie

puis on va l'indiquer dans le VBA à la place du mot de passe Gmail à la ligne sendpassword

Chez moi ça marche nickel

Merci charlyne33.

Ca marche magnifiquement.

Un grand merci pour ta réponse !

Rechercher des sujets similaires à "publipostage passant gmail"