Om du vill flytta alla e-postmeddelanden i en PST-fil till en specifik mapp i en annan PST-fil kan du använda metoden som introduceras i den här artikeln. Det kommer att lära dig hur du använder VBA för att snabbt få det.
Ibland, av vissa skäl, kan du behöva flytta alla e-postmeddelanden i en specifik PST-fil till en specifik mapp i en annan PST-fil. I det här fallet, om du gör det manuellt, blir det utan tvekan ganska besvärligt. Därför kommer vi här att lära ut en snabb metod, som kommer att använda VBA för att gå igenom alla mappar i en viss PST-fil och flytta varje e-postmeddelande till en specifik mapp. Läs vidare för att uppnå de utarbetade stegen och koderna.

Batchflytta alla e-postmeddelanden i en Outlook PST-fil till en specifik mapp
- Starta din Outlook-applikation redan från början.
- Sedan kan du byta till fliken "Utvecklare" och klicka på knappen "Visual Basic". Eller tryck på "Alt + F11" genvägar.
- Därefter, i popup-fönstret för VBA-redigerare, öppna en modul som inte används eller direkt infoga en ny.
- Kopiera och klistra sedan in följande VBA-koder i denna modul.
Private Sub GetAllFolders()
Dim objFolders As Outlook.Folders
Dim objFolder As Outlook.Folder
'Get all the folders in a specific PST file
Set objFolders = Outlook.Application.Session.Folders("Personal").Folders
For Each objFolder In objFolders
Call MoveEmails(objFolder)
Next
End Sub
Private Sub MoveEmails(ByVal objFolder As Outlook.Folder)
Dim objTargetFolder As Outlook.Folder
Dim objSubFolder As Outlook.Folder
Dim i As Long
Dim objMail As Outlook.MailItem
'Get the specific destination folder
'You can change it as per your case
Set objTargetFolder = Outlook.Application.Session.Folders("John Smith").Folders("New")
If objTargetFolder Is Nothing Then
Set objTargetFolder = Outlook.Application.Session.Folders("John Smith").Folders.Add("New")
End If
'Move each emails in the folder to the destination folder
For i = objFolder.Items.Count To 1 Step -1
If objFolder.Items.Item(i).Class = olMail Then
Set objMail = objFolder.Items.Item(i)
objMail.Move objTargetFolder
End If
Next i
'Process the subfolders in the folder recursively
If (objFolder.Folders.Count > 0) Then
For Each objSubFolder In objFolder.Folders
Call MoveEmails(objSubFolder)
Next
End If
End Sub
- Ändra sedan din Outlook-makrosäkerhetsnivå till låg.
- Så småningom kan du köra det nya makrot genom att klicka på "Kör"-ikonen i verktygsfältet eller trycka på "F5"-tangenten.
- På en gång kommer alla e-postmeddelanden från alla mappar i en specifik mapp att flyttas till den förutbestämda mappen i omgångar.
Rädda dina PST-data i tid
Om du tyvärr lider PST-skada, vad ska du göra då? I allmänhet måste din första tanke få tillbaka de komprometterade PST-data så snart som möjligt. Som vanligt är det enklaste sättet att återställa från en uppdaterad säkerhetskopia. Men om datasäkerhetskopieringen är flera veckor gammal kan den vara värdelös. I det här fallet har du inget annat val än att återgå till ett potent återställningsverktyg, som t.ex DataNumen Outlook Repair.
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 MDF-fix och Outlook-programvara för reparationsprogramvara. För mer information besök www.datanumen.com
