Macro pour envoye un e-mail sur Ms Outlook

life069 -  
 Xavier -
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

A voir également:

5 réponses

Xavier
 
As tu un fichier excel type a me passer ?
1
life069
 
Comment pourrais-je vous envoyer le fichier.?
0
Xavier
 
En faite c'est bon :p j'ai fais les modifs et trouvé ton pb =)
0
Xavier
 
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
life069
 
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
Xavier
 
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Xavier
 
Aussi, tu bouffes bcp de ressource pour rien car ta boucle va jusqu'a la fin de ton tableau.
0