Private Sub envoimail
' déclaration des variables
Dim appOutlook As Outlook.Application
Dim message As Outlook.MailItem
Dim myRecipient As Object
Dim email As String
'Crée une session Microsoft Outlook
Set appOutlook = CreateObject("outlook.application")
'Crée un nouveau message
Set message = appOutlook.CreateItem(olMailItem)
' initialisation de variables
email = "[EMAIL="adresse@free.fr"]adresse@free.fr[/EMAIL]"
'Titre, texte, destinataires, etc ... et envoi.
With message
.Subject = "Sujet du message"
.Body = "Bonjour," & vbCr & vbCr
.Recipients.Add (email)
.attachments.Add "C:\documents\Mes images\exemple.jpg"
.Send
End With
End Sub
Dim Adresse As String, Sujet As String, Texte As String
Adresse = "[EMAIL="Destinataire01@mail.fr;Destinataire02@mail.fr"]Destinataire01@mail.fr;Destinataire02@mail.fr[/EMAIL]"
Sujet = "Le sujet"
Texte = "Bonjour," & vbCrLf & vbCrLf _
& "Vous trouverez ci joint les infos demandées" & vbCrLf & vbCrLf & _
"Cordialement" & vbCrLf & Environ("UserName")
Shell "C:\Program Files\Outlook Express\msimn.exe " & "/mailurl:mailto:" & _
Adresse & "?subject=" & Sujet & "&Body=" & Texte
Bonjour,
Ces codes sont supers et je vous en remercie.
Ce que j'essaye de faire est rajouter en pièce jointe une ou des feuilles bien spécifiques et uniquement celle la pour alleger l'attachement.
Soit directement depuis le fichier soir en copiant les feuilles désirées dans un nouveau book qui se ferme sans s'enregistrer une fois le mail envoyé
Avez vous une idée?
Merci pour votre aide.
'Copier la feuille que je veux envoyer en piece joite
ThisWorkbook.Sheets("TestEnvoiMail").Copy
Dim PieceJointe As String
PieceJointe = ActiveWorkbook.Path
With ActiveWorkbook
call EnvoiEmail Range("B1"), Range("B2"), Range("B3"), PieceJointe
' Va fermer le nouveau document crée sans l'enregistrer.
.Close SaveChanges:=False
End With