Comment supprimer les destinataires et l'expéditeur d'un fichier .msg ?

Bonjour,
Objectif : Transférez un fichier un fichier MSG en ajoutant au préalable un message et en supprimant les destinataires et l'expéditeur d'origine. Donc pas de transfert en pièce jointe.
Explication :
Je dois composer automatiquement un message mais je dois joindre le contenu d'un autre e-mail stocké sur le disque au format msg. Exactement comme si je devais transférer un message de ma boîte de réception. Les éventuelles pièces jointes doivent être conservées.
Comment je tente de faire? :

J'ai utilisé des méthodes de l'Objet Outlook.MailItem qui semblent marcher sauf que les destinataires et l'expéditeur initiaux du message msg sont chargés comme si j'ai fait un Reply All. Je dois donc supprimer par code VBA l'expéditeur et les destinataires initiaux qui ne sont plus concernés par ce nouveau message.
J'arrive à supprimer les e-mails des destinataires mais pas celui de l'expéditeur. En effet, j'utilise l'instruction suivante Omail.Sender.Delete qui génère une erreur système : "Un événement n'a pu invoquer aucun des abonnés".
Une idée de solution ou de proposition d'une autre méthode?
Je joins mon fichier Excel ainsi que le fichier .msg exemple.
Merci d'avance pour toute aide.
Merci de modifier l'extension du fichier message-liste-lycees1.txt en message-liste-lycees1.msg (car l'interface n'accepte pas le partage de l'extension msg)

Bonjour, vous donnez vous même la réponse à la lecture de votre post : ( comme un transfert )

- Réouvrir vos fichier msg.

-utiliser l'option transférer ceci ouvre un nouveau mail modifiable

- supprimer toutes les données non souhaitée.

-Enfin Fichier "enregistrer sous"

Vous aurez votre message sans les infos.

Bonjour Xmenpl?
Merci pour votre message.
Ce que vous décrivez est bien sûr la façon nominale de faire mais mon soucis semble différent car j'envois des e-mail automatiques et la vraie contrainte est que je ne dois pas mettre le mail initial en pièce jointe. Toutes actions que vous citées doivent se faire automatiquement sans intervention humaine. Quand vous dites "Supprimer toutes les données non souhaitées" cela suppose le faire manuellement tout comme "Enregistrez sous". Tout doit être fait en vba et si vous regardez mon code tout marche effectivement sauf la suppression de l'expéditeur initial. C'est ce qui me reste à réaliser. Cet expéditeur est récupéré à cause de la fonction CreateItemFromTemplate. Peut-être n'est elle pas la bonne fonction à utiliser. C'est tout l'objet de ma question.
Cordialement,

J'ai du mal lire ?

"mais je dois joindre le contenu d'un autre e-mail stocké sur le disque au format msg"

Si c'est toujours le même mail qui est joint autant

faire la modification à l'origine sur le stockage disque non ?

Oui il se peut aussi que j'ai mal expliqué.
On ne peut pas intervenir sur le fichier sur le disque car tout doit être automatique. C'est le programme qui va aller chercher le le bon fichier msg en fonction de certains critères.

Bonjour,
La bonne solution consistait en fait d'utiliser la fonction forward plutôt que celle qui ouvre le fichier msg comme modèle.
L'astuce est donc d'utiliser la fonction OpenShareItem et non OpenFromItemType. En revanche, il est nécessaire d'utiliser le Namespace et aussi deux instances de MailItem dont le second sera le message transféré.

    Cible = "G:\APPLI_EXCEL\Message_Liste_Lycees.msg"    
    Set Olk = New Outlook.Application
    Set OlNS = Olk.GetNamespace("MAPI")
    Set Omail = OlNS.OpenSharedItem(Cible)
    Set Omail2 = Omail.Forward
    strMsgOrigine = Omail2.SenderEmailAddress & vbCrLf & Omail2.CC & Omail2.HTMLBody
    With Omail2
        .Recipients.Add ("titi@yahoo.fr; toto@gmail.com")
        .HTMLBody = strMessage & vbCrLf & strNewMsg & vbCrLf & vbCrLf & strMsgOrigine
        .Display
    End With

De cette manière, on peut même ajouter automatiquement un nouveau message qui accompagne le message à transférer, genre, "Bonjour, je vous transfère ci-joint le message de .... ci-dessous".

Rechercher des sujets similaires à "comment supprimer destinataires expediteur fichier msg"