Batch Verplaats e-mails van alle submappen van de ene map naar een andere map in Outlook

Misschien heeft u een map met daarin talloze submappen. Als u de e-mails erin wilt reorganiseren, zoals het snel verplaatsen van alle e-mails van deze submappen naar een specifieke map, kunt u de manier gebruiken die in dit artikel wordt gedeeld.

Soms moet u om de een of andere reden de e-mails van alle submappen van de ene map naar een andere map verplaatsen, bijvoorbeeld omdat u e-mails opnieuw wilt classificeren, zodat deze submappen niet langer bruikbaar zijn. In dit geval is het lastig om deze submappen een voor een te verwerken. Daarom stellen we u hier op een andere manier voor.

Batch Verplaats e-mails van alle submappen van de ene map naar een andere map in Outlook

Batch Verplaats e-mails van alle submappen van de ene map naar een andere map

  1. Start allereerst uw Outlook-programma.
  2. Tik vervolgens in het hoofdscherm van Outlook op de toets "Alt + F11", die u naar de VBA-editor brengt.
  3. Vervolgens moet u in het nieuwe venster “Microsoft Visual Basic for Applications” een module openen die niet in gebruik is.
  4. Kopieer en plak vervolgens de volgende VBA-code in deze module.
Dim objTargetFolder As Outlook.folder

Sub BatchMoveEmailsFromSubfoldersToAnotherFolder()
    Dim objSourceFolder As Outlook.folder
    Dim objFolder As Outlook.folder
  
    'Get the source folder whose subfolders to be processed
    Set objSourceFolder = Application.Session.PickFolder
 
    If Not (objSourceFolder Is Nothing) And objSourceFolder.DefaultItemType = olMailItem Then
       If objSourceFolder.folders.count > 0 Then
          'Select a target folder
          Set objTargetFolder = Application.Session.PickFolder
          If Not (objTargetFolder Is Nothing) Then
             For Each objFolder In objSourceFolder.folders
                 Call ProcessFolders(objFolder)
             Next
             MsgBox "Move Completed!", vbExclamation
          End If
       Else
          MsgBox "No subfolders!", vbExclamation
       End If
    End If
End Sub

Sub ProcessFolders(ByVal objFolder As Outlook.folder)
    Dim i As Long
    Dim objSubfolder As Outlook.folder
 
    For i = objFolder.Items.count To 1 Step -1
        'Move emails to the target folder
        If objFolder.Items(i).Class = olMail Then
           objFolder.Items(i).Move objTargetFolder
        End If
    Next
 
    'Process subfolders recursively
    If objFolder.folders.count > 0 Then
       For Each objSubfolder In objFolder.folders
           Call ProcessFolders(objSubfolder)
       Next
    End If
End Sub

VBA-code - Batch Verplaats e-mails van alle submappen van de ene map naar een andere map

  1. Daarna kunt u deze macro uitvoeren.
  • Druk eerst in dit macrovenster op de toets "F5".
  • Vervolgens moet u een bronmap kiezen waarvan de submappen moeten worden verwerkt.Selecteer Bronmap
  • Daarna moet u de bestemmingsmap specificeren waarnaar u e-mails wilt verplaatsen.
  • Vervolgens zal deze macro aan het werk gaan. Wanneer hij klaar is, krijgt u een bericht met de tekst "Voltooid".
  • Uiteindelijk kunt u de doelmap openen. U zult zien dat alle e-mails uit de submappen van de bronmap daarheen zijn verplaatst.

Herstel gecompromitteerde Outlook-gegevens

Ondanks de vele functies, zoals andere e-mailclients, kan Outlook ook niet ontsnappen aan corruptie. Nu er steeds meer gegevens worden opgeslagen, wordt Outlook steeds vatbaarder voor fouten en schade. Daarom moet u een krachtige reparatietool bij de hand houden, zoals DataNumen Outlook Repair. Het is speciaal ontworpen om Outlook repareren problemen. Daardoor kan het moeiteloos beschadigde Outlook-bestanden scannen en herstellen.

Auteur Introductie:

Shirley Zhang is een expert op het gebied van gegevensherstel in DataNumen, Inc., de wereldleider in technologieën voor gegevensherstel, waaronder mdf herstel en Outlook-reparatiesoftwareproducten. Voor meer informatie bezoek www.datKanumen.com

Reacties zijn gesloten.