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

- หน้าต่างใหม่จะเปิดขึ้น ในนั้นคุณควรเปิดโมดูลใหม่และคัดลอกโค้ดต่อไปนี้ลงไป
Sub RemoveAttachmentsfromAgedEmail()
Dim olInbox As Outlook.Folder
Dim varItem As Variant
Dim i As Integer
Dim intDatDiff As Integer
Dim Att As Attachment
Set olInbox = Session.GetDefaultFolder(olFolderInbox)
For i = olInbox.Items.Count To 1 Step -1
Set varItem = olInbox.Items.Item(i)
If varItem.Class = olMail Then
'calculate the period between now and the received time
intDatDiff = DateDiff("d", varItem.ReceivedTime, Now)
'You can replace "50" as per your needs
If intDatDiff > 50 Then
For Each Att In varItem.Attachments
Att.Delete
Next Att
varItem.Save
End If
End If
Next
End Sub
- ตอนนี้คุณสามารถออกจากหน้าต่าง "Visual Basic" ปัจจุบันและดำเนินการเพิ่มแมโครใน Quick Access Toolbar ทำตามขั้นตอนด้านล่าง:
- ประการแรก ให้กดลูกศรลงในแถบเครื่องมือด่วนแล้วเลือก "คำสั่งเพิ่มเติม" จากรายการดรอปดาวน์
- จากนั้นคุณควรเลือก "มาโคร" ในฟิลด์ "เลือกคำสั่งจาก"
- จากนั้นเลือกมาโครที่ถูกต้องแล้วคลิกปุ่ม "เพิ่ม" ตรงกลาง
- สุดท้าย คลิกปุ่ม "ตกลง" เพื่อเปิดใช้งานและกลับไปที่หน้าต่างหลักของ Outlook
- ในที่สุดคุณจะพบและคลิกที่ปุ่มใน Quick Access Toolbar ไฟล์แนบในอีเมลที่เก่ากว่าวันที่ระบุจะถูกลบออกอย่างรวดเร็ว
ลบไฟล์แนบออกจากอีเมลที่ส่งซึ่งเก่ากว่าวันที่ระบุ
เพื่อให้บรรลุเป้าหมายนี้ คุณสามารถคัดลอกรหัส VBA ทั้งหมดด้านบน แต่เปลี่ยนบางบรรทัดโดยทำตามประกาศด้านล่าง:
- ประการแรก เปลี่ยน “olInbox” ทั้งหมดเป็น “olSentItemFolder” ในรหัส VBA
- จากนั้นแทนที่ “Set olInbox = Session.GetDefaultFolder(olFolderInbox)” ด้วย:
Set olSentItemFolder = Session.GetDefaultFolder(olFolderSentMail)
- ถัดไปแทนที่ “intDatDiff = DateDiff(“d”, varItem.ReceivedTime, Now)” ด้วย:
intDatDiff = DateDiff("d", varItem.SentOn, Now)
กำจัดข้อผิดพลาด Outlook ที่น่ารำคาญ
หากคุณใช้ Outlook เป็นเวลานาน ข้อผิดพลาดบ่อยครั้งจะต้องกลายเป็นเรื่องธรรมดา เห็นได้ชัดว่าคุณไม่สามารถคาดเดาหรือกำจัดมันออกไปได้ทั้งหมด สิ่งที่คุณทำได้คือพยายามอย่างเต็มที่เพื่อแก้ไขปัญหาเหล่านั้น ตัวอย่างเช่น ใช้เครื่องมือซ่อมแซมกล่องขาเข้า Scanpest.exe เป็น แก้ไขข้อผิดพลาดอีเมล Outlook. นอกจากนี้ คุณต้องสำรองข้อมูล Outlook เป็นประจำในกรณีที่เกิดข้อขัดข้องโดยไม่คาดคิด
บทนำผู้เขียน:
Shirley Zhang เป็นผู้เชี่ยวชาญด้านการกู้คืนข้อมูลใน DataNumen, Inc. ซึ่งเป็นผู้นำระดับโลกด้านเทคโนโลยีการกู้คืนข้อมูล ได้แก่ ซ่อมแซม SQL Server mdf ความเสียหาย และผลิตภัณฑ์ซอฟต์แวร์ซ่อมแซมแนวโน้ม ดูข้อมูลเพิ่มเติมได้ที่ wwwdatanumenด้วย.


