So verschieben Sie Elemente in einem Ordner automatisch in den übergeordneten Ordner, bevor Sie sie in Outlook löschen

Jetzt teilen:

Wenn Sie in Outlook einen Ordner löschen, werden seine Elemente standardmäßig auch in den Ordner "Gelöschte Elemente" verschoben. Wenn Outlook die Elemente in einem Ordner vor dem Löschen automatisch in den übergeordneten Ordner verschieben soll, können Sie die in diesem Artikel angegebenen Mittel verwenden.

Wenn Sie einen Ordner löschen, warnt Outlook Sie, dass dessen gesamter Inhalt ebenfalls in den Ordner „Gelöschte Elemente“ verschoben wird. Meistens möchten Sie jedoch nur den Ordner selbst löschen, ohne die darin enthaltenen Elemente. Daher wünschen Sie sich, dass die Elemente automatisch in den übergeordneten Ordner verschoben werden. Hier zeigen wir Ihnen, wie Sie dies mithilfe von VBA realisieren. Falls Sie noch keine VBA-Kenntnisse haben, lesen Sie bitte zuerst meinen vorherigen Artikel – „So führen Sie VBA-Code in Outlook aus".Verschieben Sie Elemente in einem Ordner automatisch in den übergeordneten Ordner, bevor Sie sie in Outlook löschen

Elemente in einem Ordner automatisch in den übergeordneten Ordner verschieben, bevor sie gelöscht werden

  1. Greifen Sie zunächst über „Alt + F11“ auf den Outlook VBA-Editor zu.
  2. Öffnen Sie dann im neuen Fenster das Projekt "ThisOutlookSession".
  3. Kopieren Sie anschließend den folgenden VBA-Code und fügen Sie ihn in dieses Projekt ein.
'Display the macro in the context menu
Sub Application_FolderContextMenuDisplay(ByVal CommandBar As Office.CommandBar, ByVal Folder As Outlook.Folder)
    Dim objCommandBarButton As Office.CommandBarButton
 
    Set objCommandBarButton = CommandBar.Controls.Add(msoControlButton)
    With objCommandBarButton
         .Style = msoButtonIconAndCaption
         .Caption = "[Smart] Delete Folder"
         .FaceId = 1668
         .OnAction = "Project1.ThisOutlookSession.DeleteFolder_MoveItemsToParentFolder"
    End With
End Sub

Sub DeleteFolder_MoveItemsToParentFolder()
    Dim objCurrentFolder As Outlook.Folder
    Dim objParentFolder As Outlook.Folder

    Set objCurrentFolder = Outlook.ActiveExplorer.CurrentFolder
    Set objParentFolder = objCurrentFolder.Parent
    
    Dim i As Long
    'Move items to parent folder
    For i = objCurrentFolder.Items.Count To 1 Step -1
        objCurrentFolder.Items.Item(i).Move objParentFolder
    Next
 
    'Delete the current folder
    objCurrentFolder.Delete
End Sub

Kopieren Sie den Code in das ThisOutlookSession-Projekt

  1. Danach können Sie jetzt einen Schuss haben.
  2. Klicken Sie zunächst mit der rechten Maustaste auf den Unterordner, den Sie löschen möchten.
  3. Wählen Sie dann im Kontextmenü die Option „[Smart] Ordner löschen“.Smart Löschen Sie einen Ordner
  4. Outlook löscht den Ordner sofort und verschiebt seine Elemente in den übergeordneten Ordner.
  5. In meinem Fall lösche ich den Unterordner "To Bob". Der übergeordnete Ordner lautet "Gesendete Objekte". Daher wurden alle Elemente wie im folgenden Screenshot in "Gesendete Elemente" verschoben.Elemente werden automatisch in den übergeordneten Ordner verschoben

Beachten Sie, dass Outlook anfällig ist

Sie sollten eine unbestrittene Tatsache berücksichtigen - Outlook ist anfällig für Fehler oder Korruption. Daher müssen Sie sich vor allen potenziellen Bedrohungen in Bezug auf Ihre Outlook-Datendatei hüten, einschließlich Viren, unsachgemäßem Beenden usw. Außerdem sollten Sie ein leistungsfähiges und glaubwürdiges Outlook-Fix-Tool vorbereiten, wie z DataNumen Outlook Repair. Es kann Ihnen dabei helfen Outlook reparieren Probleme innerhalb von Minuten

Einführung des Autors:

Shirley Zhang ist eine Datenrettungsexpertin in DataNumen, Inc., das weltweit führend bei Datenwiederherstellungstechnologien ist, einschließlich mdf-fix und Outlook-Reparatursoftwareprodukte. Für weitere Informationen besuchen Sie www.datanumen.com €XNUMX

Jetzt teilen:

Kommentare sind geschlossen.