Freitag, 17. Februar 2012

Iteration über alle in eine Word-Datei eingebette OLE-Objekte

In einem Word-Dokument befinden sich ein Dutzend OLE-Objekte, sprich in die Word-Datei eingebettete Dateien wie PDFs, TXTs und XLSs.

Folgendes Visual Basic-Script iteriert über die Shapes und InlineShapes in einem Dokument und gibt den Dateinamen aus:

Sub emeidiListEmbeddedFiles()
    Debug.Print "Shapes in ActiveDocument.Shapes.Count: " & ActiveDocument.Shapes.Count
    Debug.Print ""
    
    For Each Shape In ActiveDocument.Shapes
        With Shape
            With .OLEFormat
                'Debug.Print "    .IconLabel: " & .IconLabel
                Debug.Print .IconLabel
            End With
        End With
    Next
    
    Debug.Print "Shapes in ActiveDocument.InlineShapes.Count: " & ActiveDocument.InlineShapes.Count
    Debug.Print ""
    
    For Each Shape In ActiveDocument.InlineShapes
        With Shape
            With .OLEFormat
                'Debug.Print "    .IconLabel: " & .IconLabel
                Debug.Print .IconLabel
            End With
        End With
    Next
    
    
End Sub

Das Script kann problemlos angepasst und erweitert werden, um die Eigenschaften der entsprechenden Objekte zu verändern.

Liked this post? Follow this blog to get more. 

Tags: , , ,
Labels: Programmierung

Kommentar erfassen