Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2013 Envoi Mail corps du texte

flo189

XLDnaute Occasionnel
Bonjour,

Via un bouton sur un classeur, je souhaite envoyer un mail paramétrer de la manière suivante :

Quel est le code pour ajouter du texte au corps du mail ?

Dim Destinataires(4) As String, Sujet As String
Dim AccuseReception As Boolean
'Modifier les mails des destinataires
Destinataires(1) = "..@.com"
Destinataires(2) = "...@.com"
Destinataires(3) = "...@.fr"
Destinataires(4) = "...@.fr"
Sujet = "Etat"
AccuseReception = True
ThisWorkbook.Sheets("Etat").Copy
ActiveWorkbook.SendMail Destinataires, Sujet, AccuseReception
ActiveWorkbook.Close False
End Sub
 

pascal21

XLDnaute Barbatruc
bonjour j'ai trouvé çà je ne sais pas si ça va t'aider
Code:
Sub Envoi_Documents()
  'Requiert une référence à la bibliothèque d'objets Outlook
  Dim Applic_Outlook As Outlook.Application
  Dim MonItem As Outlook.MailItem
  Dim Document As Range
  Dim Fichier_joint As String
Sheets("Mail").Visible = True
Sheets("Mail").Select
Application.ScreenUpdating = True
'Crée l'objet Outlook
Set Applic_Outlook = New Outlook.Application
'Parcourt en boucle les lignes
For Each Document In Sheets("Mail").Range("pièces")
    'Obtenir les données
    Objet_Mail = Document.Offset(0, -1)
    Adresse_Mail = Document.Offset(0, -3)
    corp_message = Document.Offset(0, 4)
    copie = Document.Offset(0, -2)
    'Créer l'élément de mail et le transmettre
    Set MonItem = Applic_Outlook.CreateItem(olMailItem)
    With MonItem
            .To = Adresse_Mail
            .Subject = Objet_Mail
            If Not IsEmpty(copie) Then .CC = copie
            .Categories = "Daily"
            .Body = corp_message
            Fichier_joint = Document
            .Attachments.Add Fichier_joint
            For I = 1 To 2
                If Not IsEmpty(Document.Offset(0, I)) And Document.Offset(0, I) <> "" Then
                    Fichier_joint = Document.Offset(0, I).Value
                    .Attachments.Add Fichier_joint
                End If
            Next
            .Display
    End With
    Application.wait (Now + TimeValue("0:00:01"))
    AppActivate Objet_Mail & " - Message", 0   ' Active Outlook
    SendKeys "%v", True  ' Envoi du message
Next
Set Applic_Outlook = Nothing
End Sub
a priori çà serait corp_message
mais sans certitude
 

flo189

XLDnaute Occasionnel
Bonjour Pascal,

Tout d'abord je te remercie pour ton aide.

J'ai essayé le code suivant sans succès, as-tu une solution plus pertinente ?

Encore merci.

Dim Destinataires(4) As String, Sujet As String, Body as String
Dim AccuseReception As Boolean
'Modifier les mails des destinataires
Destinataires(1) = "..@.com"
Destinataires(2) = "...@.com"
Destinataires(3) = "...@.fr"
Destinataires(4) = "...@.fr"
Sujet = "Etat"
Body= "Bonjour, Veuillez trouver en PJ l'état"
AccuseReception = True
ThisWorkbook.Sheets("Etat").Copy
ActiveWorkbook.SendMail Destinataires, Sujet, Body, AccuseReception
ActiveWorkbook.Close False
End Sub
 

Discussions similaires

Réponses
2
Affichages
303
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…