Ich verwende ein Skript (das ich nicht geschrieben habe), um Word-Dokumente in XML zu konvertieren. Alles funktioniert einwandfrei, solange das Word-Dokument einheitlich gestaltet ist. Eines der Dinge, die das Skript nicht verarbeiten kann, ist, wenn Bilder als OLE-Objekte eingefügt werden. Diese Bilder werden vom Skript einfach ignoriert, wohingegen Bilder, die regelmäßig als Nicht-OLE-Objekte eingefügt wurden, vom Skript gut aufgenommen werden.Können Sie Bilddaten aus einem OLE-Objekt in Word mithilfe von VBA abrufen?
Ich habe auch ein VBA-Skript verwendet (siehe Teil unten), um das Dokument vor der Umwandlung zu bereinigen. Das Skript fügt dem Dokument Stile hinzu, verschiebt einige Dinge und ... was ich versuche, es zu machen, besteht darin, OLE-Bilder in Nicht-OLE-Bilder zu konvertieren.
Also was ich wissen möchte ist: Gibt es eine Möglichkeit, die InlineShapes im Dokument zu durchlaufen und OLE-Grafiken in reguläre Grafiken zu konvertieren oder gibt es eine Möglichkeit, die Bilddaten aus dem OLE-Objekt zu holen und einzufügen in das Dokument als PNG. Diese
ist, was mein vba Skript jetzt tut:
Sub docscrubber()
Dim i As Integer
Dim total As Integer
Dim oIshp As InlineShape
total = ActiveDocument.InlineShapes.Count
i = 0
For Each oIshp In ActiveDocument.InlineShapes
i = i + 1
On Error Resume Next
Application.StatusBar = "Progress: " & i & " of " & total
With oIshp
oIshp.Range.Copy
oIshp.Select
Selection.Paste
End With
Next oIshp
End Sub
Statt die Bilddaten zu bekommen, ich das Dokument Code.
Vielen Dank im Voraus!