Macro pour envoye un e-mail sur Ms Outlook

Bonjour,

Est ce que quelqu'un pourrais m'aider pour ma programmation visant a envoyer un e-mail a partir de Excel. J'utilise a la fois Ms outlook et Outlook express. J'arrive a ouvrir l'application Outlook mail le problem c'est que les donnees sont affiche et il y une ligne vide avant le corps du text. J'aimerais supprimer cette ligne je ne sais pas comment faire.

Please assist.

Best regards

5 réponses

  1. As tu un fichier excel type a me passer ?
    1
    1. Comment pourrais-je vous envoyer le fichier.?
      0
    2. En faite c'est bon :p j'ai fais les modifs et trouvé ton pb =)
      0
  2. Bonjour,

        Sub test() 
           Set a = Outlook.CreateItem(olMailItem) 
            With a 
                .To = "Destinataire@mail.fr" 
                .Subject = "Mon sujet" 
                .BodyFormat = olFormatHTML 
                .HTMLBody = "Le contenu en html avec du <b>gras</b> de <i>l'italique</i> etc..." 
                .Send 
            End With 
       End Sub


    Ps : ne pas oublier de rajouter la référence Microsoft Outlook

    Je rajoute un lien qui pourrait t'aider !

    http://dj.joss.free.fr/web.htm

    Cdlt.
    0
    1. Xavier,

      Merci pour votre prompt reponse, mais j'aimerais te donner le code vba:
      Sub Mail_Text_in_Body()
      Dim msg As String, cell As Integer
      Dim Recipient As String, Subj As String, HLink As String
      Dim Recipientcc As String
      Recipient = Sheets("Datas").Range("D2").Value
      Recipientcc = Sheets("Datas").Range("D4").Value
      Subj = Sheets("Datas").Range("D3").Value
      Sheets("mdgcc").Select

      For i = 1 To Range("B301").End(xlDown).Row

      If Range("B" & i) = "" Then GoTo Suite

      msg = msg & vbNewLine & Range("B" & i)

      Suite:
      Next i

      msg = msg & vbNewLine

      Shell "C:\Program Files\Outlook Express\msimn.exe " & "/mailurl:mailto:" & Recipient & "?" & "cc=" & Recipientcc & "&" & "subject=" & Subj & "&Body=" & msg

      Sheets("discharge").Select
      End Sub

      >>>Mon problem ici c'est au niveau du resultat. J'aimerais supprimer la premiere ligne vide dans Outlook express ou Ms outlook.

      Comptant toujours sur votre prompt reponse.

      Cdlt.
      0
      1. Ok, j'ai trouvé ton problème !

        Ton espace au début, est du que tu fais un retour chariot dès le début !

        If msg = "" Then
            msg = Range("B" & i)
        Else: msg = msg & vbNewLine & Range("B" & i)
        End If


        Voilà après je ne suis pas très fort en optimisation :p

        Cdlt.
        0
        1. Aussi, tu bouffes bcp de ressource pour rien car ta boucle va jusqu'a la fin de ton tableau.
          0