Bir Outlook PST Dosyasındaki Tüm E-postaları VBA Üzerinden Belirli Bir Klasöre Toplu Taşıma

Şimdi paylaş:

Bir PST dosyasındaki tüm e-postaları başka bir PST dosyasındaki belirli bir klasöre taşımak isterseniz, bu makalede açıklanan yöntemi kullanabilirsiniz. Hızlı bir şekilde elde etmek için VBA'yı nasıl kullanacağınızı öğretecektir.

Bazen, bazı nedenlerden dolayı, belirli bir PST dosyasındaki tüm e-postaları başka bir PST dosyasındaki belirli bir klasöre taşımanız gerekebilir. Bu durumda manuel olarak yaparsanız, tartışmasız oldukça zahmetli olacaktır. Bu nedenle, burada belirli bir PST dosyasındaki tüm klasörler arasında geçiş yapmak ve her e-postayı belirli bir klasöre taşımak için VBA'yı kullanacak hızlı bir yöntem öğreteceğiz. Ayrıntılı adımlara ve kodlara ulaşmak için okumaya devam edin.

Bir Outlook PST Dosyasındaki Tüm E-postaları Belirli Bir Klasöre Toplu Taşıma

Bir Outlook PST Dosyasındaki Tüm E-postaları Belirli Bir Klasöre Toplu Taşıma

  1. En başta, Outlook uygulamanızı başlatın.
  2. Ardından “Geliştirici” sekmesine geçebilir ve “Visual Basic” düğmesine tıklayabilirsiniz. Veya “Alt + F11” tuş kısayollarına basın.
  3. Ardından, açılan VBA düzenleyici penceresinde, kullanımda olmayan bir modülü açın veya hemen yenisini ekleyin.
  4. Daha sonra aşağıdaki VBA kodlarını kopyalayıp bu modüle yapıştırın.
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

VBA Kodları - Bir Outlook PST Dosyasındaki Tüm E-postaları Toplu Olarak Belirli Bir Klasöre Taşıyın

  1. Bundan sonra, Outlook makro güvenlik düzeyinizi düşük olarak değiştirin.
  2. Sonunda araç çubuğundaki “Çalıştır” simgesine tıklayarak veya “F5” tuşuna basarak yeni makroyu çalıştırabilirsiniz.
  3. Bir kerede, belirli bir klasördeki tüm klasörlerin tüm e-postaları toplu olarak önceden belirlenmiş klasöre taşınacaktır.

PST Verilerinizi Zamanında Kurtarın

Maalesef acı çekiyorsanız PST hasarı, Sonra ne yapacaksın? Genel olarak, ilk düşünceniz güvenliği ihlal edilmiş PST verilerini mümkün olan en kısa sürede geri almak olmalıdır. Her zaman olduğu gibi, en basit yol güncel bir veri yedeğinden geri yüklemektir. Ancak veri yedeği birkaç haftalıksa işe yaramaz olabilir. Bu durumda, aşağıdakiler gibi güçlü bir kurtarma aracına başvurmaktan başka seçeneğiniz yoktur: DataNumen Outlook Repair.

Yazar Tanıtımı:

Shirley Zhang, bir veri kurtarma uzmanıdır. DataNumendahil olmak üzere veri kurtarma teknolojilerinde dünya lideri olan , Inc. mdf düzeltme ve görünüm onarım yazılım ürünleri. Daha fazla bilgi için ziyaret edin www.datanumen.com

Şimdi paylaş:

Yoruma kapalı.