Mail aus lokalen Folder in Outlook Ordner kopieren
23.11.2023 11:26:55
Fettertiger
mein Problem hat nur am Rande mit Excel zu tun, da der Code zwar unter Excel läuft, aber Emails die als .msg lokal (bzw auf Sharepoint) gespeichert sind in einen Outlook Ordner kopiern soll. Ich hoffe ich darf die Frage trotzdem hier stellen.
Untenstehender Code funkioniert einwandfrei - allerdings nur einmal. Beim zweiten Versuch muss ich erst die temporarären dateien unter C:\Users\xxxxx\AppData\Local\Microsoft\Windows\INetCache\ löschen um fortzusetzen.
Vor dem Start des Codes ist OutApp schon "gesettete" (und als Object dimensioniert). Aufruf würde zb so erfolgen:
Call CopyMsgFileToOLFolder("C:\Mail\Testmail.msg",objFolder) wobei der objFolder über getnamespace ermittelt wurde.
Was könnte ich tun, um die datei wieder zugänglich zu machen?
Sub CopyMsgFileToOLFolder(Filename As String, oFolder As Outlook.mapifolder)
'----------------------------------------------------------------------------------------------
'--- Copies an email from an OS folder into an outlook folder
'-------------------------------------------------------------------------------------------
Dim oNamespace As Namespace
Dim oItem As Object
If OutApp Is Nothing Then
Set OutApp = CreateObject("Outlook.Application")
End If
Set oNamespace = OutApp.GetNamespace("MAPI")
Set oItem = oNamespace.OpenSharedItem(Filename)
'----------------------------------------------------------------------------------------------
'--- move method works like copy
'-------------------------------------------------------------------------------------------
oItem.Move oFolder
Set oItem = Nothing
Set oNamespace = Nothing
End Sub