Fehlerbeschreibung:
Wenn ein IMAP-Postfach exportiert und in ein Exchange-Postfach importiert wurde, kann es vorkommen, dass die Ordner vom Typ “IMAP” sind. E-Mails werden dann als ungelesen angezeigt aber Sie sind nicht sichtbar.
Folgendes Makro kann man erstellen, damit alle Ordner vom Typ “IMAP” in IPM.Post geändert werden und alles wieder normal ist.
1. Setzt die Sicherheit für die Ausführung von Makros auf “gering”
Um das zu Überprüfen / Ändern öffnet Outlook. Danach oben links auf “Datei” -> “Optionen” -> “Trust Center” -> “Makroeinstellungen”.
In älteren Versionen ab Outlook 2007 findet Ihr die Einstellungen unter “Tools” -> “Makro Sicherheit”
2. Makro erstellen und ausführen
- Öffnet Outlook
- Öffnet den VBA Editor über die Tastenkombi “Alt+F11”
- Rechtsklickt im VBA Editor links auf Projekt1 -> Einfügen -> Modul
- Fügt den folgenden Makro-Inhalt ein
- Danach klickt Ihr oben in der Menüleiste des Editors auf “Makro ausführen”
- Anschließend wählt Ihr den obersten Postfachpunkt aus, damit alle Unterordner angepasst werden
- Danach sind eure Ordner vom richtigen Ordner-Typ und alle Elemente werden wieder angezeigt
=> Bilderserie finde Ihr am Ende des Beitrages
Makro:
Option Explicit Dim SubFolder As MAPIFolder Sub ChangeFolderClassAllSubFolders() Dim i As Long Dim iNameSpace As NameSpace Dim myOlApp As Outlook.Application Dim ChosenFolder As Object Dim Folders As New Collection Dim EntryID As New Collection Dim StoreID As New Collection Set myOlApp = Outlook.Application Set iNameSpace = myOlApp.GetNamespace("MAPI") Set ChosenFolder = iNameSpace.PickFolder If ChosenFolder Is Nothing Then GoTo ExitSub: End If Call GetFolder(Folders, EntryID, StoreID, ChosenFolder) ChangeFolderContainer For i = 1 To Folders.Count Set SubFolder = myOlApp.Session.GetFolderFromID(EntryID(i), StoreID(i)) On Error Resume Next ChangeFolderContainer On Error GoTo 0 Next i ExitSub: End Sub Private Sub ChangeFolderContainer() Dim oFolder As Outlook.folder Dim oPA As Outlook.PropertyAccessor Dim PropName, Value, folderType As String PropName = "http://schemas.microsoft.com/mapi/proptag/0x3613001E" Value = "IPF.Note" On Error Resume Next Set oFolder = SubFolder 'Application.ActiveExplorer.CurrentFolder Set oPA = oFolder.PropertyAccessor folderType = oPA.GetProperty(PropName) Debug.Print SubFolder.Name & " " & (folderType) If folderType = "IPF.Imap" Then oPA.SetProperty PropName, Value Debug.Print " Changed: " & SubFolder.Name & " " & Value End If Set oFolder = Nothing Set oPA = Nothing End Sub Sub GetFolder(Folders As Collection, EntryID As Collection, StoreID As Collection, Fld As MAPIFolder) Dim SubFolder As MAPIFolder Folders.Add Fld.FolderPath EntryID.Add Fld.EntryID StoreID.Add Fld.StoreID For Each SubFolder In Fld.Folders GetFolder Folders, EntryID, StoreID, SubFolder Next SubFolder ExitSub: Set SubFolder = Nothing End Sub
Leider sind im Makro ein paar Syntaxfehler, u.a. Dim SubFolder As MAPIFolderSub ChangeFolderClassAllSubFolders() sind zwei Zeilen zusammen geklebt.
‚Application.ActiveExplorer.CurrentFolder muss heißen ‘Application.ActiveExplorer.CurrentFolder
Weitere habe ich dann nicht gesucht sondern das Skript noch an anderer Stelle richtiger gefunden 😉
Trotzdem aber danke fürs teilen! Hat mich auf den richtigen Weg gebracht.
Hallo Herr Münzer,
vielen Dank für den Hinweis. Ich werde das direkt auf der Webseite anpassen. Leider sind da bei Kopieren die Formate geändert worden.
Viele Grüße,
Karsten Tetzlaff
Besten Dank für Deinen Beitrag!!!!!
Danach hab ich jetzt etwa 2 Stunden gesucht. Es Synchronisiert auch sofort mit dem Exchange O365, somit trifft das Filter Chaos bei allen Clients mit dem Benutzer nicht mehr auf.
Nochmals besten DANK!!!
Hallo Pascal,
super das dir mein Beitrag geholfen hat. Vielen lieben Dank für dein Kommentar 😀
Liebe Grüße Karsten
Oh Mann, danach habe ich wie verzweifelt x-Stunden gesucht!! Danke für den tollen Hinweis bzw. Anleitung! Jetzt funktioniert alles 🙂
Nochmals besten Dank!
Man wird alt wie ne Kuh (Ochse) und lernt immer noch dazu. DANKE!!!! Nach Stunden der Fehlersuche bin ich hier fündig geworden und es hat geklappt. Überweise dir hiermit 100 virtuelle Credits 😉 *g
Hallo Rainer,
danke für dein Kommentar. Ich freue mich wenn ich helfen kann 🙂
Schönes Restwochenende.
VG Karsten