Hur man snabbt kopierar mappstruktur från en Outlook PST-fil till en annan via VBA

Om du vill kopiera mappstrukturen från en Outlook PST-fil till en annan kan du använda metoden som introduceras i den här artikeln, som lär dig hur du använder VBA för att få det på en gång.

För att bättre hantera dina e-postmeddelanden har du kanske skapat flera anpassade mappar i din huvud Outlook-fil. När du skapar en ny Outlook PST-fil kanske du vill använda samma mappstruktur. I min tidigare artikel - “2 steg för att behålla den aktuella mapphierarkin i en ny Outlook-fil”, Kan du lära dig en traditionell metod som använder“ Arkiv ”-funktionen för att uppnå den. Ändå är det faktiskt fortfarande lite tråkigt. Jämfört med det blir det mycket snabbare att använda VBA-koder för att få det. Därför berättar vi i det följande de detaljerade stegen och koder.

Kopiera snabbt mappstruktur från en Outlook PST-fil till en annan

Kopiera mappstruktur från en Outlook PST-fil till en annan

  1. Starta ditt Outlook-program redan från början.
  2. Tryck sedan på “Alt + F11” -knapparna i Outlook-fönstret.
  3. Därefter kommer du in i Outlook VBA-redigeringsfönstret.
  4. Därefter kopierar och klistrar du in följande VBA-koder i en ny modul.
Public objNewPSTFolder As Outlook.Folder
 
Sub CopyFolderStructure()
    Dim objFolders As Outlook.Folders
    Dim objFolder As Outlook.Folder
 
    'Get the folders of the source Outlook PST file
    Set objFolders = Outlook.Application.Session.Folders("Personal").Folders
 
    'Create the new pst file in your desired local folder and name
    Outlook.Application.Session.AddStore "E:\New PST File.pst"
    Set objNewPSTFolder = Session.Folders.GetLast()
 
    For Each objFolder In objFolders
        CreateFolder objFolder
    Next
 
    MsgBox "Completed!", vbOKOnly + vbInformation, "Copy Folder Structure"
End Sub
 
Sub CreateFolder(objFolder As Outlook.Folder)
    Dim objSubFolder As Outlook.Folder
 
    'Only copy the mail folder
    If (objFolder.DefaultItemType = olMailItem) Then
       'New Outlook PST file auto includes the "Deleted Items" folder, so skip it
       'Skip the useless mail folders - "Conversation Action Settings" and "Quick Step Settings"
       If (objFolder.Name <> "Deleted Items") And (objFolder.Name <> "Conversation Action Settings") And (objFolder.Name <> "Quick Step Settings") Then
 
          'Create the new folder
          objNewPSTFolder.Folders.Add objFolder.Name
          Set objNewPSTFolder = objNewPSTFolder.Folders.Item(objFolder.Name)
 
          For Each objSubFolder In objFolder.Folders
              CreateFolder objSubFolder
          Next
 
          Set objNewPSTFolder = objNewPSTFolder.parent
       End If
    End If

End Sub

VBA-koder - Kopiera mappstruktur från en Outlook PST-fil till en annan

  1. Ändra sedan din makrosäkerhetsnivå till låg.
  2. Senare tillbaka till VBA-redigeringsfönstret och tryck på “F5” -knappen för att köra makrot.
  3. Slutligen, när makrot slutar fungera, kommer du att få ett meddelande med uppmaningen "Slutförd!".Meddelande uppmanad slutförd
  4. Vid den här tiden kan du gå till e-postnavigeringsfönstret. Du ser en ny Outlook-datafil som har samma mappstruktur som PST-källfilen, som bilden nedan:Kopiera mappstruktur

Hantera störande PST-problem

Eftersom Outlook PST är felbenägen måste många av er någonsin stött på olika problem i Outlook. Inför dem kan du först använda Outlook-reparationsverktyget för inkorg för att prova. Om det misslyckas kan du sedan använda ett mer kraftfullt verktyg från tredje part, till exempel DataNumen Outlook Repair, som kan fixa Outlook PST-fel som en vind.

Författarintroduktion:

Shirley Zhang är expert på dataåterställning DataNumen, Inc., som är världsledande inom teknik för återställning av data, inklusive SQL Server fast och Outlook-programvara för reparationsprogramvara. För mer information besök www.datanumen.com

Kommentarer är stängda.