Ordner Gelöschte Objekte bei Outlook-Start leeren
Wer am Feierabend schnell nach Hause möchte, hat manchmal keine Zeit, das automatische Leeren des Ordners "Gelöschte Objekte" abzuwarten und beendet Outlook® auf unsanfte Art und Weise.
Das kann unter Umständen Beschädigungen der Pst-Datei zur Folge haben und Datenverlust nach sich ziehen. Eine Option zum Leeren des Ordners bei Programmstart gibt es in Outlook® zwar nicht, jedoch kann diese Funktion mit etwas VBA nachgerüstet werden.
Zur Verwendung dieses Beispiels beachten Sie bitte die wichtigen Hinweise, sowie den Workshop VBA in Outlook® verwenden. Den Code bitte in das Modul DieseOutlookSitzung einfügen.
Ab Outlook® 2000
Option Explicit Private Sub Application_Startup() '===================================================================== ' Leert bei Programmstart den Ordner "Gelöschte Objekte" ' (c) Peter Marchert - http://www.outlook-stuff.com ' 2009-07-07 Version 1.0.0 '===================================================================== Dim objTrash As Outlook.MAPIFolder Dim objItems As Outlook.Items Dim objItem As Object Dim lngLoop As Long On Error Resume Next '--------------------------------------------------------------------- ' Ordner "Gelöschte Objekte" referenzieren '--------------------------------------------------------------------- Set objTrash = Outlook.Session.GetDefaultFolder(olFolderDeletedItems) '--------------------------------------------------------------------- ' Alle Elemente im Ordner referenzieren '--------------------------------------------------------------------- Set objItems = objTrash.Items '--------------------------------------------------------------------- ' Alle Elemente bearbeiten '--------------------------------------------------------------------- For lngLoop = objItems.Count To 1 Step -1 '----------------------------------------------------------------- ' Einzelnes Element referenieren '----------------------------------------------------------------- Set objItem = objItems(lngLoop) '----------------------------------------------------------------- ' Element löschen '----------------------------------------------------------------- objItem.Delete '----------------------------------------------------------------- ' Outlook® für andere Aufgaben Zeit geben '----------------------------------------------------------------- DoEvents Next '--------------------------------------------------------------------- ' Clean Up '--------------------------------------------------------------------- Set objItem = Nothing Set objItems = Nothing Set objTrash = Nothing End Sub