วิธีการแยกรูปภาพที่ฝังโดยอัตโนมัติจากอีเมลขาเข้าที่ระบุผ่าน Outlook VBA

แบ่งปันเลย:

หากคุณต้องการให้ Outlook ดึงข้อมูลและบันทึกภาพที่ฝังจากอีเมลขาเข้าที่ระบุโดยอัตโนมัติคุณสามารถอ้างถึงบทความนี้ ที่นี่เราจะสอนวิธีใช้รหัส VBA

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

แยกรูปภาพที่ฝังออกจากอีเมลขาเข้าที่ระบุโดยอัตโนมัติ

  1. ประการแรกเปิดโปรแกรม Outlook ของคุณตามปกติ
  2. จากนั้นทริกเกอร์โปรแกรมแก้ไข Outlook VBA ตามปกติโดยอ้างอิง t“วิธีเรียกใช้รหัส VBA ใน Outlook ของคุณ"
  3. จากนั้นคัดลอกและวางโค้ด VBA ต่อไปนี้ลงในโปรเจ็กต์“ ThisOutlookSession”
Public WithEvents objInbox As Outlook.Folder
Public WithEvents objInboxItems As Outlook.Items

Private Sub Application_Startup()
    Set objInbox = Outlook.Application.Session.GetDefaultFolder(olFolderInbox)
    Set objInboxItems = objInbox.Items
End Sub

Private Sub objInboxItems_ItemAdd(ByVal Item As Object)
    Dim objMail As Outlook.MailItem
    Dim objAttachments As Outlook.Attachments
    Dim objAttachment As Outlook.Attachment
    Dim strWindowsFolder As String
    Dim i As Long
 
    If TypeOf Item Is MailItem Then
       Set objMail = Item
 
       'Specify the emails as per your needs
       If objMail.Importance = olImportanceHigh Then
          Set objAttachments = objMail.Attachments
 
          'Specify the windows folder
          strWindowsFolder = "E:\" & objMail.Subject & Format(Now, "yymmddhhmmss")
          MkDir (strWindowsFolder)
 
          'Save all embedded images to the folder
          For i = 1 To objAttachments.Count
              Set objAttachment = objAttachments.Item(i)
              If IsEmbedded(objAttachment) = True Then
                 objAttachment.SaveAsFile strWindowsFolder & "\" & objAttachment.FileName
              End If
          Next
      End If
    End If
End Sub

Function IsEmbedded(objCurAttachment As Outlook.Attachment) As Boolean
    Dim objPropertyAccessor As Outlook.PropertyAccessor
    Dim strProperty As String
 
    Set objPropertyAccessor = objCurAttachment.PropertyAccessor
    strProperty = objPropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001E")
 
    If InStr(1, strProperty, "@") > 0 Then
       IsEmbedded = True
    Else
       IsEmbedded = False
    End If
End Function

รหัส VBA - แยกรูปภาพที่ฝังตัวจากอีเมลขาเข้าที่ระบุโดยอัตโนมัติ

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

ทำความสะอาดไฟล์แนบขนาดใหญ่เป็นประจำ

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

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

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

แบ่งปันเลย:

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