Code pour suprimer d'outlook un e-mail cree par vba excel

Fred92

XLDnaute Nouveau
Bonsoir a tous,

Je sollicite une nouvelle fois votre aide, et je remercie d'avance tous ceux qui me consacrerons un peu de leur temps.

J'ai trouvé sur différents sites une macro sous EXCEL 2007 qui me permet d'envoyer un e-mail avec mon classeur en pièce jointe.

Le code est le suivant:

Private Sub ENVOI_MAIL()
stAppName = "C:\Program Files\Microsoft Office\Office12\OUTLOOK.EXE"
Call Shell(stAppName, 1) ' pour l'ouverture d'outlook
suj = "ENVOI E MAIL" 'le sujet du mail
cont = "Bonsoir, veuillez trouver classeur en piece jointe" 'le corps du mail
adfic = "E:\ENVOI MAIL.xlsm" 'la pièce jointe avec son chemin
dest = "frederic@free.fr; isabelle@free.fr" ' les destinataires
destbcc = "thomas@wanadoo.fr" ' les destinataires en copie caché

'Avant de lancer cette macro, Dans l'éditeur VBA: Faire Menu / Tools /
'Reference /Cocher "Microsoft Outlook Library"


Set myOlApp = CreateObject("Outlook.Application")

Dim ol As New Outlook.Application
Dim olmail As MailItem
Dim CurrFile As String

Set ol = New Outlook.Application
Set olmail = ol.CreateItem(olMailItem)
With olmail
.To = dest
.Cc = destcc
.Bcc = destbcc
.Subject = suj
.Body = cont
.Attachments.Add adfic
.Send
End With

Set myOlApp = CreateObject("Outlook.Application")
myOlApp.Quit ' je ferme outlook
Set ApplicationExcel = Nothing 'Libaire la mémoire
Application.Quit 'Quitte Excel
End Sub

Ma question est la suivante:

Quel code faut il ajouter pour que le mail ainsi envoyé soit effacé des courriers envoyés d'OUTLOOK avant sa fermeture?

Je vous remercie tous par avance.

Bien cordialement

Frédéric
 

MichelXld

XLDnaute Barbatruc
Re : Code pour suprimer d'outlook un e-mail cree par vba excel

Bonjour,

Il faut utiliser la propriété DeleteAfterSubmit pour supprimer le mail envoyé.

Par contre je me suis permi de modifier ton code car la synthaxe mélangeait plusieurs méthodes :

Code:
Dim ol As New Outlook.Application
Dim olmail As MailItem
Dim suj As String, cont As String, dest As String
Dim destbcc As String, adfic As String
Dim destcc As String
 
suj = "ENVOI E MAIL" 'le sujet du mail
cont = "Bonsoir, veuillez trouver classeur en piece jointe" 'le corps du mail
adfic = "E:\ENVOI MAIL.xlsm" 'la pièce jointe avec son chemin
dest = "[EMAIL="frederic@free.fr"]frederic@free.fr[/EMAIL]; [EMAIL="isabelle@free.fr"]isabelle@free.fr[/EMAIL]" ' les destinataires
destbcc = "[EMAIL="thomas@wanadoo.fr"]thomas@wanadoo.fr[/EMAIL]" ' les destinataires en copie caché
 
'Avant de lancer cette macro, Dans l'éditeur VBA: Faire Menu / Tools /
'Reference /Cocher "Microsoft Outlook Library"
Set ol = New Outlook.Application
Set olmail = ol.CreateItem(olMailItem)
With olmail
    .To = dest
    .Cc = destcc
    .Bcc = destbcc
    .Subject = suj
    .Body = cont
    .DeleteAfterSubmit = True
    .Attachments.Add adfic
    .Send
End With

ol.Quit ' je ferme outlook
'Set ApplicationExcel = Nothing 'Libaire la mémoire
'Application.Quit 'Quitte Excel

bonne journée
michel
 

Discussions similaires

Statistiques des forums

Discussions
311 725
Messages
2 081 943
Membres
101 849
dernier inscrit
florentMIG