Per Powershell bestehende MSG Datei editieren und als HTML Format speichern
Hallo Zusammen,
mittlerweile kann ich eine bestehende msg Datei mit Variablen befüllen, nur wir die Datei am Schluss als Text Format gespeichert, obwohl die Quelle eine HTM Formatierung ausweist.
Wie kann ich dieses im vorhanden Format übernehmen?
Danke für Eure Hilfe,
Thomas
mittlerweile kann ich eine bestehende msg Datei mit Variablen befüllen, nur wir die Datei am Schluss als Text Format gespeichert, obwohl die Quelle eine HTM Formatierung ausweist.
Wie kann ich dieses im vorhanden Format übernehmen?
$file= "C:\Temp\Mail BT 1. Eskalation - sko-wei01-mvfs01.msg"
$file | ConvertTo-Html #if needed
$outlook= New-Object -ComObject outlook.application
$msg= $outlook.createitemfromtemplate($file)
$msg.HTMLbody = $msg.HTMLbody.Replace("__NAME__", $Name1)
$msg.HTMLbody = $msg.HTMLbody.Replace("__ANREDE__", $Anrede1)
$msg.HTMLbody = $msg.HTMLbody.Replace("__MAILADRESSE__", $Mail1)
$msg.saveas($file)
Danke für Eure Hilfe,
Thomas
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 585825
Url: https://administrator.de/forum/per-powershell-bestehende-msg-datei-editieren-und-als-html-format-speichern-585825.html
Ausgedruckt am: 22.12.2024 um 20:12 Uhr
6 Kommentare
Neuester Kommentar
Den zweiten Parameter in der SaveAs Methode benutzen!
https://docs.microsoft.com/de-de/office/vba/api/outlook.mailitem.saveas
Als HTML
Oder als MSG
Usw.
https://docs.microsoft.com/de-de/office/vba/api/outlook.mailitem.saveas
Als HTML
$msg.saveas('d:\datei.html',5)
Oder als MSG
$msg.saveas('d:\datei.msg',3)
Usw.
Zitat von @thomas1972:
Danke für den Hinweis,
habe es mit dem vorgeschlagen Wert/Information durchgeführt.
Nun kann ich die Datei nicht mehr öffnen. Es erscheint der Hinweis:
Die Datei..... kann nicht geöffnet werden. Möglicherweise ist die Datei bereits geöffnet, oder Sie sind nicht berechtigt, die Datei zu öffnen
Du musst der Datei schon die passende Endung verpassen, dann klappt das auch!Danke für den Hinweis,
habe es mit dem vorgeschlagen Wert/Information durchgeführt.
Nun kann ich die Datei nicht mehr öffnen. Es erscheint der Hinweis:
Die Datei..... kann nicht geöffnet werden. Möglicherweise ist die Datei bereits geöffnet, oder Sie sind nicht berechtigt, die Datei zu öffnen
Außerdem kannst du nicht die Vorlage benutzen und dann im gleichen Dateinamen speichern weil die Vorlage von Outlook eben noch in Benutzung ist.
Wenn du ne *.MSG speicherst und darin aber nur HTML im Plaintext drin ist is klar das die Meldung kommt, ist eben keine MSG mehr.
mit Wert 3 kann ich Sie zwar wieder öffnen, bleibt aber nur eine "nur Text" Formatierung, obwohl vorher ein "HTTML" Format der Mail gewesen ist
Wert 3 ist ja auch kein reines HTML sondern binäres MSG Format , einfach mal in die Konstanten einlesen:https://docs.microsoft.com/de-de/dotnet/api/microsoft.office.interop.out ...
Du musst dich schon entscheiden was du am Ende bekommen willst.
By the way speichert man ein Template/Vorlage richtigerweise im *.oft Format
https://docs.microsoft.com/de-de/office/vba/api/outlook.application.crea ...
https://docs.microsoft.com/de-de/office/vba/api/outlook.application.crea ...