Wenn ein Ordner in Outlook versehentlich verschoben wurde, ist es leider nicht so einfach diesen wieder zu finden. Denn Outlook bietet von Haus aus keine Funktion zum Suchen von Ordnern. Aber es gibt ein paar Kniffe um an den Ordner in Outlook wieder zu finden.
Möglichkeit 1: Auflisten der Ordner um diesen in Outlook zu suchen
Eine direkte Suche von Ordnern ist zwar nicht möglich in Outlook aber man kann sich eine Liste ausgeben lassen. Über diese kann dann drüber geschaut werden ob sich der entsprechende Ordner darunter befindet.
Dazu klickt man mit der rechten Maustaste auf das Postfach in Outlook (Normalerweise steht dort die E-Mailadresse). Dort wählt man Datendateieigenschaften…
Im Nachfolgenden Fenster gibt es die Schaltfläche Ordnergröße…. Nach einem klick auf diese werden alle Ordner innerhalb des Postfaches angezeigt. Diese Liste kann man von Hand durchgehen um zu prüfen ob sich der gesuchte Ordner sich darin befindet. Leider lässt sich diese Liste nicht aus Outlook heraus kopieren, was die suche nach dem Ordner etwas vereinfachen würde.
Möglichkeit 2: Per VBA Makro einen Ordner in Outlook suchen
Eine weitere Methode um einen Ordner in Outlook zu finden besteht über ein VBA Makro. Um das Makro zu nutzen müssen die Entwicklertools in Outlook aktiviert werden.
Entwicklertools hinzufügen
mit einem Rechtsklick auf das Menüband in Outlook.
Dort wird der Punkt Menüband anpassen… gewählt.
Im dortigen Fenster wird auf der rechten Seite die Entwicklertools angehakt.
Anschließend findet sich im oberen Menüband die Entwickertools.
VBA Makro hinzufügen
Nun muss noch das Makro für die Suche in Outlook eingefügt werden. Welche sich nun im Menüband unter den Entwicklertools befinden.
Dazu wird das Menü Makros und die Schaltfläche Makros gewählt.
Oben wird ein Name für das Makro eingetragen z.B. „Outlook Ordner Suche“ und anschließend auf Erstellen geklickt.
In das nachfolgende Fenster wird der folgende Inhalt kopiert und anschließend oben auf die Diskette zum speichern geklickt. (Outlook Ordner Suche Skript via vboffice.net)
Private m_Folder As Outlook.MAPIFolder Private m_Find As String Private m_Wildcard As Boolean Private Const SpeedUp As Boolean = True Private Const StopAtFirstMatch As Boolean = True Public Sub FindFolder() Dim Name$ Dim Folders As Outlook.Folders Set m_Folder = Nothing m_Find = "" m_Wildcard = False Name = InputBox("Find name:", "Search folder") If Len(Trim$(Name)) = 0 Then Exit Sub m_Find = Name m_Find = LCase$(m_Find) m_Find = Replace(m_Find, "%", "*") m_Wildcard = (InStr(m_Find, "*")) Set Folders = Application.Session.Folders LoopFolders Folders If Not m_Folder Is Nothing Then If MsgBox("Activate folder: " & vbCrLf & m_Folder.FolderPath, vbQuestion Or vbYesNo) = vbYes Then Set Application.ActiveExplorer.CurrentFolder = m_Folder End If Else MsgBox "Not found", vbInformation End If End Sub Private Sub LoopFolders(Folders As Outlook.Folders) Dim F As Outlook.MAPIFolder Dim Found As Boolean If SpeedUp = False Then DoEvents For Each F In Folders If m_Wildcard Then Found = (LCase$(F.Name) Like m_Find) Else Found = (LCase$(F.Name) = m_Find) End If If Found Then If StopAtFirstMatch = False Then If MsgBox("Found: " & vbCrLf & F.FolderPath & vbCRLF & vbCrLf & "Continue?", vbQuestion Or vbYesNo) = vbYes Then Found = False End If End If End If If Found Then Set m_Folder = F Exit For Else LoopFolders F.Folders If Not m_Folder Is Nothing Then Exit For End If Next End Sub
Nun sollte über die Makro Schaltfläche das soeben erstellte Makro zu finden sein und dort mit einem klicken zum ausführen gebracht werden.
In dem darauf folgenden Fenster kann der Suchbegriff zum gewünschten Ordner eingegeben werden. Als Ergebnis sollte angezeigt werden wo sich der gesuchte Ordner in Outlook befindet.
Leider funktioniert das Script nicht korrekt, wenn es mehr als 1 Ordner mit dem selben Namen gibt. Er findet in diesem Fall nur 1 Ordner und bietet eine weitere Suche nicht an. Ich benutze Outlook 2016 32-Bit unter Windows 10 64-Bit.
Bei mir läuft das script bedauerlicherweise überhaupt nicht. Ich benutze Microsoft Office 365 ProPlus V1708 Build 8431.2079 – 32-Bit unter Windows 10 64-Bit. (Outlook 2016 )
Jetzt funktioniert das script. Ich muss wohl irgend etwas falsch gemacht haben.
Ist ne Superhilfe. Vielen Dank!
Eine Frage zu dem Makro:
Was macht man denn, wenn man mehrere Unterordner mit der gleichen Bezeichnung (z. B. mit der Jahreszahl „2017“) hat.
Das Makro sucht ja immer nur bis zum ersten Ergebnis.Kann man das Makro erweitern, dass es weitersucht?
Dies hat der Programmierer schon berücksichtigt.
Im oberen Bereich folgende Zeile anpassen auf:
Private Const StopAtFirstMatch As Boolean = False
Hat super geklappt!!! Danke für die tolle Hilfe.
Wie ist es wenn mehrere Archivordner im Outlook vorhanden sind ?Werden diese auch berücksichtigt ?
Solch eine Möglichkeit über ein VBA Makro Ordner zu suchen und gezielt an zu springen habe ich schon lange gesucht, läuft super.
Wenn man das Makro mit einem Mausklick starten will gibt es folgende Möglichkeit (getestet mit Office365):
„Symbolleiste für den Schnellzugriff anpassen“ -> „Weitere Befehle…“ -> im Dropdownmenü den Punkt „Makros“ auswählen -> das Makro „Projekt1.FindFolder“ mit dem Button „Hinzufügen“ nach rechts bringen -> ok. (Man kann über den Button „Ändern…“ auch noch das Icon anpassen)
Nun hat man in der obersten Zeile (Schnellzugriff) ein Icon mit dem das Makro sofort gestartet wird.
Super Sache! Frage: wie muss das Makro aktualisiert werden, sodass es den Ordner auch findet wenn dessen Name nicht exakt mit dem Suchbegriff übereinstimmt, z.B. diesen nur enthält, etwa so:
Gesuchter Ordnername: „Customer_Management“
Suchbegriff: „Customer“
Vielen Dank
Das war jetzt aber mal eine wirkliche Hilfe!