Cum să mutați în lot toate e-mailurile dintr-un fișier PST Outlook într-un folder specific prin VBA

Distribuie acum:

Dacă doriți să mutați toate e-mailurile dintr-un fișier PST într-un folder specific dintr-un alt fișier PST, puteți utiliza metoda introdusă în acest articol. Vă va învăța cum să utilizați VBA pentru a-l obține rapid.

Uneori, din anumite motive, poate fi necesar să mutați toate e-mailurile dintr-un anumit fișier PST într-un anumit folder dintr-un alt fișier PST. În acest caz, dacă o faci manual, va fi, fără îndoială, destul de supărător. Prin urmare, aici vom preda o metodă rapidă, care va folosi VBA pentru a parcurge toate folderele dintr-un anumit fișier PST și a muta fiecare e-mail într-un anumit folder. Citiți mai departe pentru a realiza pașii și codurile elaborate.

Mutați în lot toate e-mailurile dintr-un fișier PST Outlook într-un folder specific

Mutați în lot toate e-mailurile dintr-un fișier PST Outlook într-un folder specific

  1. De la bun început, lansați aplicația Outlook.
  2. Apoi puteți trece la fila „Dezvoltator” și faceți clic pe butonul „Visual Basic”. Sau apăsați comenzile rapide „Alt + F11”.
  3. Ulterior, în fereastra pop-up editor VBA, deschideți un modul care nu este utilizat sau introduceți direct unul nou.
  4. Apoi copiați și inserați următoarele coduri VBA în acest 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

Coduri VBA - Mută ​​în lot toate e-mailurile dintr-un fișier PST Outlook într-un folder specific

  1. După aceea, schimbați nivelul de securitate al macrocomenzii Outlook la scăzut.
  2. În cele din urmă, puteți rula noua macrocomandă făcând clic pe pictograma „Run” din bara de instrumente sau apăsând tasta „F5”.
  3. Deodată, toate e-mailurile din toate folderele dintr-un anumit folder vor fi mutate în dosarul predeterminat în loturi.

Salvați-vă datele PST la timp

Dacă suferi, din păcate Daune PST, ce vei face atunci? În general, primul tău gând trebuie să recuperezi datele PST compromise cât mai curând posibil. Ca de obicei, cel mai simplu mod este restaurarea dintr-o copie de rezervă a datelor actualizată. Cu toate acestea, dacă backup-ul de date este vechi de câteva săptămâni, poate fi inutil. În acest caz, nu aveți de ales decât să recurgeți la un instrument puternic de recuperare, cum ar fi DataNumen Outlook Repair.

Introducerea autorului:

Shirley Zhang este expertă în recuperarea datelor DataNumen, Inc., care este lider mondial în tehnologiile de recuperare a datelor, inclusiv remediere mdf și produse software de reparații Outlook. Pentru mai multe informații vizitați www.datanumen.com

Distribuie acum:

Comentariile sunt închise.