Partage
  • Partager sur Facebook
  • Partager sur Twitter

Envoi d'email depuis Excel

Avec destinataire et contenu variable

Sujet résolu
    11 juin 2015 à 15:54:08

    Bonjour à toutes et tous,

    Me revoilà à chercher de l'aide pour une fonction VBA sur ce forum...

    Voici mon nouveau problème: je souhaiterais envoyer un email via outlook depuis un bouton placé sur une feuille excel.

    Le destinataire ainsi que le contenu de l'email seront récupéré d'une cellule dont le contenu pourra varier.

    J'ai déjà trouvé quelques fonctions sur le net, mais comme je l'ai déjà dit, je n'ai aucunes connaissances en VBA, et de ce fait, il m'est impossible de modifier les sources que je trouve pour qu'elles correspondent à ce dont j'ai vraiment besoin.

    Je vous joins tout de même la source que je me suis procurée sur le net:

    Sub envoiPlageCellules_Excel2002()
    ActiveSheet.Range("A1:B5").Select
    ActiveWorkbook.EnvelopeVisible = True
     
    With ActiveSheet.MailEnvelope
        .Introduction = "bonjour , ci joint les données ..." ' <= A remplacer par une unique cellule
        .Item.To = "destinataire@dvp.fr" ' <= A remplacer par une référence de cellule
        .Item.Subject = "le sujet"
        .Item.Send
    End With
    End Sub

    D'avance merci pour votre précieuse aide.

    Amicalement,

    Gub

    • Partager sur Facebook
    • Partager sur Twitter
      11 juin 2015 à 16:05:16

      Bonjour,

      Alors tu crées une variable de type string dans le genre "Destinataires" à laquelle tu attribue le contenu de ta cellule contenant les adresses mail séparées par un ;

      tu fais de mêmes pour le corps du texte.

      Ensuite tu dits que ton introduction et ton item.to sont également à tes variables.

      Normalement le tour est joué. Il faut cependant savoir que le corps (=contenu) de ton mail est du code HTML, donc si tu vas à la ligne dans ton code VBA, il n'ira pas à la ligne dans ton mail... il faut utiliser les balises </br> pour aller à la ligne

      • Partager sur Facebook
      • Partager sur Twitter
        12 juin 2015 à 9:31:55

        Salut Lindadu01,

        Merci pour ton aide. Je vais tenter d'intégrer tes indications à mon code... 

        Si tu as un petit exemple, je suis tout de même preneur...

        Merci.

        Amicalement,

        Gub

        • Partager sur Facebook
        • Partager sur Twitter
          13 juin 2015 à 20:57:55

          Voici ce que j'avais fait (avec siganture + PJ)

          Sub Mail_Outlook()
              'Déclaration des variables
              Dim Destinataires As String
              Dim Objet As String
              Dim Contenu As String
              Dim ObjOutlook As New Outlook.Application
              Dim ObjOutlookmail As MailItem
               
              'On enregistre à nouveau le PDF
              Enregistrer_PDF
               
              'Initialisation des variables
              Destinataires = "; "
              Objet = "Test"
              'Le corps du mail est en HTML donc on utiliser le code HTML pour le contenu
              Contenu = "<font face=Calibri> <font size=3> Bonjour, <br><br> Ci-joint le plan . <br><br> Cordialement , "
              Set ObjOutlook = New Outlook.Application
              Set ObjOutlookmail = ObjOutlook.CreateItem(olMailItem)
               
              'Envoi du mail
              With ObjOutlookmail
                  .To = Destinataires
                  .Subject = Objet
                  .Attachments.Add Chemin & NomPDF & ".pdf"
                  .GetInspector.CommandBars.Item("Insert").Controls("Signature").Controls(1).Execute
                  .HTMLBody = Contenu & .HTMLBody
                  .Send
              End With
            
          End Sub

          Ce sera pe plus parlant

          • Partager sur Facebook
          • Partager sur Twitter

          Envoi d'email depuis Excel

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown