วิธีแบทช์ย้ายอีเมลทั้งหมดในไฟล์ Outlook PST ไปยังโฟลเดอร์เฉพาะผ่าน VBA

แบ่งปันเลย:

หากคุณต้องการย้ายอีเมลทั้งหมดในไฟล์ PST ไปยังโฟลเดอร์ที่ระบุในไฟล์ PST อื่น คุณสามารถใช้วิธีการที่แนะนำในบทความนี้ มันจะสอนวิธีใช้ VBA ให้ได้ไวๆ

บางครั้ง ด้วยเหตุผลบางประการ คุณอาจต้องย้ายอีเมลทั้งหมดในไฟล์ PST หนึ่งไปยังโฟลเดอร์เฉพาะในไฟล์ PST อื่น ในกรณีนี้ หากคุณทำด้วยตนเอง มันจะค่อนข้างลำบากอย่างแน่นอน ดังนั้น ในที่นี้เราจะสอนวิธีการที่รวดเร็ว ซึ่งจะใช้ VBA เพื่อวนซ้ำโฟลเดอร์ทั้งหมดในไฟล์ PST และย้ายอีเมลแต่ละฉบับไปยังโฟลเดอร์เฉพาะ อ่านต่อเพื่อบรรลุขั้นตอนและรหัสที่ซับซ้อน

ชุดย้ายอีเมลทั้งหมดในไฟล์ Outlook PST ไปยังโฟลเดอร์เฉพาะ

ชุดย้ายอีเมลทั้งหมดในไฟล์ Outlook PST ไปยังโฟลเดอร์เฉพาะ

  1. ในตอนแรกให้เปิดแอปพลิเคชัน Outlook ของคุณ
  2. จากนั้นคุณสามารถเปลี่ยนเป็นแท็บ "นักพัฒนา" และคลิกที่ปุ่ม "Visual Basic" หรือกดคีย์ลัด “Alt + F11”
  3. ต่อจากนั้น ในหน้าต่างตัวแก้ไข VBA แบบผุดขึ้น ให้เปิดโมดูลที่ไม่ได้ใช้งานหรือใส่โมดูลใหม่โดยตรง
  4. คัดลอกและวางโค้ด VBA ต่อไปนี้ลงในโมดูลนี้
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 - ชุดย้ายอีเมลทั้งหมดในไฟล์ Outlook PST ไปยังโฟลเดอร์เฉพาะ

  1. หลังจากนั้นให้เปลี่ยนระดับความปลอดภัยของแมโคร Outlook เป็นระดับต่ำ
  2. ในที่สุด คุณสามารถเรียกใช้มาโครใหม่ได้โดยคลิกไอคอน "เรียกใช้" ในแถบเครื่องมือหรือกดปุ่ม "F5"
  3. อีเมลทั้งหมดของโฟลเดอร์ทั้งหมดในโฟลเดอร์ใดโฟลเดอร์หนึ่งจะถูกย้ายไปยังโฟลเดอร์ที่กำหนดไว้ล่วงหน้าในคราวเดียว

กู้คืนข้อมูล PST ของคุณได้ทันเวลา

หากคุณโชคไม่ดีที่ต้องทนทุกข์ทรมาน PST ความเสียหายแล้วคุณจะทำอย่างไร? โดยทั่วไป ความคิดแรกของคุณคือต้องกู้คืนข้อมูล PST ที่ถูกบุกรุกโดยเร็วที่สุด ตามปกติ วิธีที่ง่ายที่สุดคือการกู้คืนจากข้อมูลสำรองที่เป็นปัจจุบัน อย่างไรก็ตาม หากการสำรองข้อมูลมีอายุหลายสัปดาห์ อาจไม่มีประโยชน์ ในกรณีนี้ คุณไม่มีทางเลือกอื่นนอกจากต้องกลับมาใช้เครื่องมือการกู้คืนที่มีศักยภาพ เช่น DataNumen Outlook Repair.

บทนำผู้เขียน:

Shirley Zhang เป็นผู้เชี่ยวชาญด้านการกู้คืนข้อมูลใน DataNumen, Inc. ซึ่งเป็นผู้นำระดับโลกด้านเทคโนโลยีการกู้คืนข้อมูล ได้แก่ แก้ไข mdf และผลิตภัณฑ์ซอฟต์แวร์ซ่อมแซมแนวโน้ม ดูข้อมูลเพิ่มเติมได้ที่ wwwdatanumenด้วย.

แบ่งปันเลย:

ความเห็นถูกปิด