Wenn Sie alle im Nachrichtentext eingebetteten Bilder schnell in E-Mail-Anhänge ändern möchten, müssen Sie sie nicht manuell entfernen und erneut anhängen. Sie können einfach den in diesem Artikel bereitgestellten VBA-Code verwenden.
Manchmal möchten Sie möglicherweise alle eingebetteten Bilder stapelweise in Anhänge umwandeln. Zum Beispiel unterbrechen zu viele Bilder im Nachrichtentext das Lesen der Texte im Nachrichtentext. Daher möchten Sie sie aus dem E-Mail-Text entfernen und stattdessen als Anhänge hinzufügen. Natürlich können Sie dies manuell tun. Es muss jedoch einfacher sein, wenn Tools oder VBA-Codes dies auf einmal erreichen können. Hier werden wir Ihnen einen solchen VBA-Code vorstellen.

Konvertieren Sie schnell alle eingebetteten Bilder in Anhänge
- Starten Sie zunächst Ihr Outlook-Programm.
- Anschließend können Sie zur Registerkarte "Entwickler" wechseln und auf die Schaltfläche "Visual Basic" klicken.
- Als Nächstes gelangen Sie in das Outlook VBA-Editorfenster.
- Anschließend müssen Sie den folgenden VBA-Code in ein leeres Modul kopieren.
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
- Danach sollten Sie bestätigen, dass in Outlook Makros zulässig sind.
- Wenn Sie dies häufig benötigen, sollten Sie das neue Makro optional zur Symbolleiste für den Schnellzugriff hinzufügen, um es später bequem überprüfen zu können.
- Schließlich können Sie es versuchen. Wählen Sie eine E-Mail aus oder öffnen Sie sie, und führen Sie das Makro aus, indem Sie in der Symbolleiste für den Schnellzugriff auf die Schaltfläche für das neue Makro klicken.
- Alle eingebetteten Bilder werden sofort wie im folgenden Screenshot in Anhänge geändert:
Tricks zum Schutz Ihrer wertvollen Outlook-Daten
Wie wir alle wissen, ist die Outlook PST-Datei genauso anfällig wie gängige Dateien wie Word-Dokumente oder Excel-Tabellen. Daher sollten Sie auf alle Risiken rund um Ihre PST-Datei achten, z. B. auf Viren oder unsachgemäße Behandlung. Sie müssen also regelmäßig Datensicherungen für Ihre PST-Datei erstellen. Auch wenn Sie es sich leisten können, ist es ratsam, eine robuste zu halten Outlook reparieren Werkzeug handlich, wie DataNumen Outlook Repair.
Einführung des Autors:
Shirley Zhang ist eine Datenrettungsexpertin in DataNumen, Inc., das weltweit führend bei Datenwiederherstellungstechnologien ist, einschließlich mdf wiederherstellen und Outlook-Reparatursoftwareprodukte. Für weitere Informationen besuchen Sie www.datanumen.com €XNUMX

