Ich versuche, ausgewählte E-Mails zu durchsuchen und Anhänge zu löschen. Ich habe ein wenig recherchiert und bin mit der Word.Document-Route fertig geworden.Inline-Anhänge löschen
Ich hatte einen früheren Leckerbissen von Code, der alle Anhänge löschte, aber hinter einer gestrichelten Linie Box ließ, die besagt, dass das Bild nicht verfügbar war.
Ich versuche, die beiden ineinander zu greifen, da diese unten Anhänge nicht löscht, sondern nur die Inline-Formen.
Code, der Inline-Bilder löscht:
Sub DeleteAllAttachmentsFromSelectedMessages()
Dim selectedItems As Selection
Dim messageObject As Object
Dim documentsObject As Object
Dim shp As InlineShape
Dim doc As Object
Dim shpRange As Object
Const wdInlineShapePicture As Long = 3
Const wdInlineShapesEmbeddedOLEObject As Long = 1
' Set reference to the Selection.
Set selectedItems = ActiveExplorer.Selection
For Each messageObject In selectedItems
Set doc = messageObject.GetInspector.WordEditor
' doc.UnProtect
For Each shp In doc.InlineShapes
Select Case shp.Type
Case wdInlineShapePicture, wdInlineShapesEmbeddedOLEObject
Set shpRange = doc.Range(shp.Range.Characters.First.Start, shp.Range.Characters.Last.End)
shpeRange.Text = "Attachment Removed" ' Replace shape with text
Case Else
' Other shapes not supported yet
End Select
' doc.Protect
messageObject.Save
Next
Next
MsgBox "Attachments were removed.", vbOKOnly, "Message"
Set selectedItems = Nothing
Set messageObject = Nothing
Set documentsObject = Nothing
Set shp = Nothing
Set doc = Nothing
Set shpRange = Nothing
End Sub
Für den Code, den ich alle Anhänge löschen wurde mit:
Sub DeleteAllAttachmentsFromSelectedMessages()
Dim attachmentsObject As Attachments
Dim selectedItems As Selection
Dim messageObject As Object
Dim attachmentCount As Long
Set selectedItems = ActiveExplorer.Selection
For Each messageObject In selectedItems
Set attachmentsObject = messageObject.Attachments
attachmentCount = attachmentsObject.Count
While attachmentCount > 0
attachmentsObject(1).Delete
attachmentCount = attachmentsObject.Count
Wend
messageObject.Save
Next
MsgBox "Attachments were removed.", vbOKOnly, "Message"
Set attachmentsObject = Nothing
Set selectedItems = Nothing
Set messageObject = Nothing
End Sub
Können Sie ein Bild der Inline hinzufügen, über die Sie sprechen – 0m3r