Jei norite greitai pakeisti visas laiško tekste įterptas nuotraukas į el. pašto priedus, jums nereikia rankiniu būdu pašalinti ir vėl pridėti. Galite tiesiog naudoti šiame straipsnyje pateiktą VBA kodo dalį.
Kartais galite paversti visus įterptus vaizdus paketais į priedus. Pavyzdžiui, per daug paveikslėlių pranešimo tekste trukdys skaityti tekstą. Todėl norite juos pašalinti iš el. laiško turinio ir pridėti kaip priedus. Žinoma, tai galite padaryti rankiniu būdu. Bet turi būti patogiau, jei bet kokie įrankiai ar VBA kodai gali tai gauti vienu ypu. Čia mes jums pateiksime tokį VBA kodą.

Greitai konvertuokite visus įterptus vaizdus į priedus
- Pirmiausia paleiskite „Outlook“ programą.
- Tada galite pereiti į skirtuką „Kūrėjas“ ir paspausti mygtuką „Visual Basic“.
- Tada pateksite į Outlook VBA redaktoriaus langą.
- Vėliau reikia nukopijuoti šį VBA kodą į tuščią modulį.
Sub TurnEmebeddedImagestoAttachments()
Dim objMail As Outlook.MailItem
Dim objAttachments As Outlook.attachments
Dim objAttachment As Outlook.Attachment
Dim objFileSystem As Object
Dim strTempFolder As String
Dim strFile As String
Dim i As Long
Select Case Outlook.Application.ActiveWindow.Class
Case olInspector
Set objMail = ActiveInspector.CurrentItem
Case olExplorer
Set objMail = Application.ActiveExplorer.Selection.Item(1)
End Select
Set objAttachments = objMail.attachments
'Create a temp folder
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
strTempFolder = objFileSystem.GetSpecialFolder(2).Path & "\Temp " & Format(Now, "YYYY-MM-DD hh-mm-ss")
MkDir (strTempFolder)
'Save all embedded images to temp folder
For i = objAttachments.Count To 1 Step -1
Set objAttachment = objAttachments.Item(i)
If IsEmbedded(objAttachment) = True Then
objAttachment.SaveAsFile strTempFolder & "\" & objAttachment.FileName
End If
Next
'Add extracted images as attachments
strTempFolder = strTempFolder & "\"
strFile = Dir(strTempFolder)
While Len(strFile) > 0
objMail.attachments.Add (strTempFolder & strFile)
strFile = Dir
Wend
'Remove embedded images from message body
With objMail
.BodyFormat = olFormatPlain
End With
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
- Po to turėtumėte patvirtinti, kad jūsų „Outlook“ nustatyta leisti makrokomandas.
- Pasirinktinai, jei to reikia dažnai, geriau pridėti naują makrokomandą prie greitosios prieigos įrankių juostos, kad ateityje būtų patogiau patikrinti.
- Galų gale galite pabandyti. Pasirinkite arba atidarykite el. laišką ir paleiskite makrokomandą spustelėdami naujos makrokomandos mygtuką greitosios prieigos įrankių juostoje.
- Nedelsiant visi įterpti vaizdai bus pakeisti į priedus, kaip parodyta šioje ekrano kopijoje:
Gudrybės, kaip apsaugoti vertingus „Outlook“ duomenis
Kaip visi žinome, „Outlook PST“ failas yra toks pat pažeidžiamas kaip ir įprasti failai, pvz., „Word“ dokumentai ar „Excel“ skaičiuoklės. Todėl turėtumėte saugotis visų su PST failu susijusių pavojų, pvz., virusų ar netinkamo tvarkymo. Taigi turite reguliariai kurti atsargines PST failo duomenų kopijas. Be to, jei galite sau tai leisti, protinga išlaikyti tvirtą „Outlook“ taisymas įrankis patogus, pvz DataNumen Outlook Repair.
Autoriaus įvadas:
Shirley Zhang yra duomenų atkūrimo ekspertė DataNumen, Inc., kuri yra pasaulyje duomenų atkūrimo technologijų lyderė, įskaitant atkurti mdf ir „Outlook“ taisymo programinės įrangos produktai. Norėdami gauti daugiau informacijos, apsilankykite WWW.datanumen.com

