E-Mail par UserForm

Bonjour Le Forum !

J'ai déjà vue un bon nombre de sujet concernant l'envoi d'E-mail, mais je n'arrive pas à trouver ce que je souhaite.

Jusqu'à maintenant si je comprend bien on doit préciser si on passe par gmail ou par outlook etc

N'est-il pas possible de mettre son adresse mail, son mdp, l'adresse de destination et après il est capable de savoir si c'est gmail ou outlook ..?

Re

Est-ce que tu as déjà le code pour envoyer via Outlook et Gmail ?

Si tu as les deux pourquoi ne pas laisser le choix à l'utilisateur ? (comme sur l'image animée ci-dessous)

mail

Re

Oui le code par outlook est le suivant:

Sub Email()
'Envoi d'email
ActiveSheet.Range("A1:L31").Select ' la plage de cellules à envoyer
ActiveWorkbook.EnvelopeVisible = True

With ActiveSheet.MailEnvelope
    .Introduction = "bonjour , ci joint les données ..."
    .Item.To = "destinataire@gmail.com"
    .Item.Subject = "le sujet"
    .Item.Send
End With
End Sub

Ça fonctionne bien à une exception prêt l'envoi de ma plage de cellule ne m'affiche pas mes bordures...

Sinon via gmail j'ai vue qu'il fallait passer par une méthode CDO.. peut être qu'il y a un moyen plus simple..

Même ouvrir ma page http nouveau mail inscrire le destinataire et coller mes plage de cellule serrait le top par exemple...

[ Mais effectivement je pourrai gêrer comme tu le dit via deux choix... ]

Regarde ce fichier, je n'ai rien inventé j'ai pris ça sur le net, à toi d'adapter ce qui se trouve dans le UserForm et test tout ça (perso je n'ai pas testé, sauf pour Outlook car je m'en sert régulièrement)

16mail.xlsm (26.16 Ko)

Il fonctionne chez toi !?

Même outlook ça ne fonctionne pas perso...

Alors oui il fonctionne, mais j'ai oublié de te dire qu'il faut ajouter la référence !

Tu fais Alt+F11 / Outils / Références... et tu actives Microsoft Outlook 16.0 Object Library (c'est pour Outlook) et tu actives aussi Microsoft CDO for Windows 2000 Library (C'est pour Gmail)

reference

Note :

J'ai modifié (c'est un bien grand mot, j'ai récupéré un code sur se site https://tutoriels.pecaudchristopher.com/tutoriels_windows/espace_scripts_vba/Tutoriel_EmailTemplateVBA.php) un code similaire pour envoyer un mail via Gmail mais je ne comprend pas pourquoi ça ne marche pas chez moi test de ton coté)

14mail.xlsm (27.64 Ko)

Le code pour Outlook correspond au code si tu disposes de Outlook directement installé sur ton PC, en gros si tu disposes de la suite office !!

Si jamais tu rencontres toujours des difficultées avec Gmail j'ai peut être une piste ici :

Si Outlook n’accepte pas votre mot de passe et que vous êtes certain d’utiliser le mot de passe correct, votre compte de courrier utilise peut-être une méthode de sécurité supplémentaire. Les comptes Gmail, Yahoo, iCloud, Outlook.com et AOL utilisent tous l’authentification à deux facteurs pour vérifier que vous êtes bien la personne qui essaie d’accéder à votre compte de courrier. Pour ajouter votre compte e-mail à Outlook, vous avez besoin d’un mot de passe d’application. Celui-ci est différent du mot de passe habituel de votre compte de courrier. Vous saurez que vous avez besoin d’un mot de passe d’application si vous voyez le message suivant : La validation en deux étapes est configurée pour votre compte. Veuillez vous connecter à l’aide de votre mot de passe d’application. Les étapes nécessaires à l’obtention d’un mot de passe d’application sont différentes pour chaque fournisseur de courrier. Sélectionnez votre fournisseur dans la liste déroulante pour consulter des instructions.

Ok c'est un sujet pour Outlook mais c'est peut être valable avec le code, au lieux d'utiliser ton mot de passe normal utilise ce fameux mot de passe d’application. Perso je ne peux pas tester à cause des par-feux de mon entreprise :/

Rechercher des sujets similaires à "mail userform"