Viele E-Mail-Nutzer stehen vor dem Problem, dass Nachrichten im Ordner „Gelöschte Elemente“ nach einer gewissen Zeit automatisch gelöscht werden. Standardmäßig entfernt Outlook solche Nachrichten häufig nach 30 Tagen. Um wichtige E-Mails vor dem automatischen Löschen zu bewahren, bietet Outlook mehrere Möglichkeiten, gelöschte Nachrichten automatisch in einen anderen Ordner zu verschieben oder sie alternativ zu archivieren.
Archivieren statt Löschen
Die einfachste Methode besteht darin, Nachrichten, die möglicherweise noch benötigt werden, nicht zu löschen, sondern zu archivieren. Nutzer sollten ausschließlich offensichtlichen Spam und unerwünschte Nachrichten löschen. Wer eine aufgeräumte Mailbox bevorzugt, kann die Schaltfläche Archivieren verwenden. Diese ist meist durch ein Symbol dargestellt, das einer Aktenschublade ähnelt. Beim Drücken der Rücktaste wird die Nachricht ebenfalls archiviert, während die Entf-Taste die E-Mail löscht. Dieses Verfahren funktioniert in allen Outlook-Versionen, einschließlich der klassischen, der neuen und der Web-Version.
Quick Steps für gezieltes Verschieben
Eine weitere Möglichkeit bieten Quick Steps. Damit können Nachrichten mit einem einzigen Klick in einen bestimmten Ordner verschoben werden. Der Vorteil gegenüber dem Archivieren ist die freie Wahl des Zielordners. Quick Steps sind in der Outlook-Menüleiste unter Start verfügbar. Außerdem können sie mit Tastenkombinationen in der Form STRG + UMSCHALT + [1–9]
versehen werden. Dies ist besonders praktisch für Anwender, die bevorzugt mit der Maus oder über definierte Tastenkürzel arbeiten.
AutoArchivierung in klassischem Outlook
In der klassischen Outlook-Version kann die AutoArchivierungsfunktion gezielt auf den Ordner „Gelöschte Elemente“ angewendet werden. Auf diese Weise lassen sich ältere Nachrichten automatisch in eine PST-Datei verschieben, ohne dass sie endgültig gelöscht werden. Diese Methode eignet sich insbesondere für lokale Sicherungen.
VBA-Makros und Sicherheitsaspekte
Alternativ lässt sich das Verschieben gelöschter Nachrichten auch über VBA automatisieren. Allerdings erfordert dies eine Herabsetzung der Makrosicherheitsstufe, was in vielen Unternehmensumgebungen nicht erwünscht ist. Deshalb wird häufig eine serverseitige Lösung oder der Einsatz von PowerShell bevorzugt.
PowerShell als flexible Lösung
PowerShell bietet eine besonders flexible Möglichkeit, Nachrichten aus dem Ordner „Gelöschte Elemente“ automatisiert in einen anderen Ordner zu verschieben, ohne Änderungen an den Sicherheitsrichtlinien vornehmen zu müssen. Die Skriptausführung kann über die Windows Aufgabenplanung regelmäßig gestartet werden, sodass keine manuelle Ausführung erforderlich ist. Bei Mailservern, die gelöschte Nachrichten nach 30 Tagen automatisch entfernen, reicht in der Regel ein wöchentlicher Durchlauf.
Funktionsweise des PowerShell-Skripts
Das Skript verbindet sich über die Outlook COM-Schnittstelle mit dem Postfach und prüft jedes Element im Ordner „Gelöschte Elemente“. Dabei wird kontrolliert, ob es sich um eine E-Mail handelt. Nur Nachrichten werden verschoben. Andere Elemente wie Kalendereinträge, Kontakte oder Besprechungsanfragen bleiben unberührt. Dies verhindert, dass Outlook versehentlich Entwürfe erstellt, anstatt die Elemente zu verschieben.
$outlook = New-Object -ComObject Outlook.Application
$namespace = $outlook.GetNamespace("MAPI")
$fromFolder = $namespace.GetDefaultFolder(3) # Deleted Items folder
$moveto = $fromFolder.Parent.Folders("Hold Deleted For Review")
$items = $fromFolder.Items
$EmailCount = $items.count
for ($i = $EmailCount; $i -ge 1; $i--) {
$item = $items.Item($i)
if ($item -is [Microsoft.Office.Interop.Outlook.MailItem]) {
$item.Move($moveto)
}
}
Verwendung von PowerShell-Skripten
Zum Ausführen des Skripts öffnet man über das Startmenü die Windows PowerShell. In der PowerShell ISE steht zusätzlich ein komfortabler Skriptbereich zur Verfügung. Der komplette Code wird in das Fenster eingefügt und durch Drücken der Eingabetaste oder des Run-Buttons gestartet.
Speichern und Ausführen eigener Skripte
Wer das Skript dauerhaft verwenden möchte, kann es als .ps1
-Datei abspeichern. Dazu wird der Code in den Editor eingefügt und mit der entsprechenden Endung gesichert. In der PowerShell IDE kann die Datei anschließend geöffnet und angepasst werden. Damit lokale Skripte ausgeführt werden dürfen, muss die folgende Richtlinie gesetzt werden:
Set-ExecutionPolicy RemoteSigned
Zum Ausführen genügt ein Rechtsklick auf die gespeicherte .ps1
-Datei und die Auswahl der Option Mit PowerShell ausführen. Damit lassen sich gelöschte Nachrichten zuverlässig in einen separaten Ordner verschieben und vor automatischer Löschung schützen.