Hvis du hurtigt vil ændre alle billederne, der er indlejret i meddelelsesteksten, til vedhæftede filer i e-mail, behøver du ikke manuelt at fjerne og vedhæfte dem igen. Du kan bare bruge det stykke VBA-kode, der er afsløret i denne artikel.
Nogle gange ønsker du måske at batchkonvertere alle indlejrede billeder til vedhæftede filer. For eksempel vil for mange billeder i meddelelsens brødtekst afbryde din læsning af teksterne i brødteksten. Derfor vil du fjerne dem fra e-mail-brødteksten og tilføje dem som vedhæftede filer i stedet. Selvfølgelig kan du gøre dette manuelt. Men det skal være mere praktisk, hvis nogen værktøjer eller VBA-koder kan få dette på én gang. Her vil vi løfte sløret for en sådan VBA-kode for dig.

Konverter hurtigt alle indlejrede billeder til vedhæftede filer
- Start først dit Outlook-program.
- Derefter kan du skifte til fanen "Udvikler" og trykke på knappen "Visual Basic".
- Dernæst kommer du ind i Outlook VBA-editorvinduet.
- Efterfølgende skal du kopiere følgende VBA-kode ind i et tomt 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
- Derefter bør du bekræfte, at din Outlook er indstillet til at tillade makroer.
- Eventuelt, hvis du ofte har brug for dette, må du hellere tilføje den nye makro til værktøjslinjen Hurtig adgang til fremtidig praktisk kontrol.
- Til sidst kan du prøve. Vælg eller åbn en e-mail, og kør derefter makroen ved at klikke på knappen ny makro i værktøjslinjen Hurtig adgang.
- Straks vil alle de indlejrede billeder blive ændret til vedhæftede filer som følgende skærmbillede:
Tricks til at beskytte dine værdifulde Outlook-data
Som vi alle ved, er Outlook PST-fil den samme sårbare som almindelige filer, såsom Word-dokumenter eller Excel-regneark. Derfor bør du holde øje med alle risici omkring din PST-fil, såsom virus eller ukorrekt håndtering. Så du skal lave regelmæssige sikkerhedskopier af din PST-fil. Også, hvis du har råd til det, er det klogt at holde en robust Outlook reparation værktøj praktisk, ligesom DataNumen Outlook Repair.
Forfatter Introduktion:
Shirley Zhang er ekspert i datagendannelse i DataNumen, Inc., som er verdens førende inden for datagendannelsesteknologier, herunder gendanne mdf og Outlook-reparationssoftwareprodukter. For mere information besøg www.datanumen.com

