Ако искате бързо да промените всички снимки, вградени в тялото на съобщението, към прикачени файлове по имейл, не е необходимо да премахвате ръчно и да прикачвате отново. Можете просто да използвате парчето VBA код, изложено в тази статия.
Понякога може да искате да превръщате всички вградени изображения в прикачени файлове. Например твърде много снимки в тялото на съобщението ще прекъснат четенето ви на текстове в тялото. Следователно искате да ги премахнете от тялото на имейла и вместо това да ги добавите като прикачени файлове. Разбира се, можете да направите това ръчно. Но трябва да е по-удобно, ако някакви инструменти или кодове на VBA могат да получат това с едно движение. Тук ще ви разкрием такъв VBA код.

Бързо конвертирайте всички вградени изображения в прикачени файлове
- На първо място, стартирайте програмата Outlook.
- След това можете да превключите към раздела „Разработчик“ и да натиснете бутона „Visual Basic“.
- След това ще влезете в прозореца на редактора на VBA на Outlook.
- Впоследствие трябва да копирате следния VBA код в празен модул.
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
- След това трябва да потвърдите, че вашият Outlook е настроен да позволява макроси.
- По желание, ако често се нуждаете от това, по-добре добавете новия макрос към лентата с инструменти за бърз достъп за бъдеща удобна проверка.
- В крайна сметка можете да опитате. Изберете или отворете имейл и след това стартирайте макроса, като щракнете върху новия бутон на макроса в лентата с инструменти за бърз достъп.
- Веднага всички вградени изображения ще бъдат променени на прикачени файлове като следната екранна снимка:
Трикове за защита на вашите ценни данни в Outlook
Както всички знаем, Outlook PST файлът е същият уязвим като обикновените файлове, като документи на Word или електронни таблици на Excel. Следователно, трябва да продължите да внимавате за всички рискове около вашия PST файл, като вируси или неправилна обработка. Така че трябва да правите редовни архиви на данни за вашия PST файл. Освен това, ако можете да си го позволите, разумно е да запазите стабилност Поправка на Outlook инструмент удобен, като DataNumen Outlook Repair.
Въведение на автора:
Шърли Джанг е експерт по възстановяване на данни в DataNumen, Inc., която е световен лидер в технологиите за възстановяване на данни, включително възстанови mdf и outlook софтуерни продукти за ремонт. За повече информация посетете WWW.datanumen.com

