Rosario hat eine große Anzahl von Dokumenten (ungefähr 44.000 davon), von denen jedes eine Grafik in der Kopfzeile enthält. Sie sucht nach einer Möglichkeit, all diese Grafiken zu entfernen, ohne jedes Dokument manuell öffnen und ändern zu müssen.

Glücklicherweise kann dies durch Erstellen eines Makros erledigt werden. Alles, was Sie tun müssen, ist, alle Dokumente in einen Ordner zu legen und dann mit dem Makro den Ordner zu durchsuchen, jedes Dokument zu öffnen, die Grafik zu entfernen und jedes Dokument zu speichern. Dies kann mit einem Makro wie dem folgenden erfolgen:

Sub StripGraphics()

Dim oShape As Shape     Dim oIShape As InlineShape     Dim I As Integer     Dim J As Integer

With Application.FileSearch         .LookIn = "C:\MyStuff\"     ' where to search         .SearchSubFolders = True    ' search the subfolders         .FileName = "*.doc"         ' file pattern to match

' if more than one match, execute the following code         If .Execute() > 0 Then             MsgBox "Found " & .FoundFiles.Count & " file(s)."



' for each file you find, run this loop             For I = 1 To .FoundFiles.Count                 ' open the file based on its index position                 Documents.Open FileName:=.FoundFiles(I)



' document is now active, check all sections                 For J = 1 To ActiveDocument.Sections.Count                     With ActiveDocument.Sections(J).Headers(wdHeaderFooterPrimary)

' remove floating graphics from header                         If .Shapes.Count > 0 Then                             For Each oShape In .Shapes                                 oShape.Delete                             Next oShape                         End If                         ' remove inline graphics from header                         If .Range.InlineShapes.Count > 0 Then                             For Each oIShape In .Range.InlineShapes                                 oIShape.Delete                             Next oIShape                         End If                     End With                     With ActiveDocument.Sections(J).Headers(wdHeaderFooterFirstPage)

' remove floating graphics from header                         If .Shapes.Count > 0 Then                             For Each oShape In .Shapes                                 oShape.Delete                             Next oShape                         End If                         ' remove inline graphics from header                         If .Range.InlineShapes.Count > 0 Then                             For Each oIShape In .Range.InlineShapes                                 oIShape.Delete                             Next oIShape                         End If                     End With                 Next J

' save and close the current document                 ActiveDocument.Close wdSaveChanges             Next I         Else             MsgBox "No files found."

End If     End With End Sub

Dieses Makro geht davon aus, dass Sie alle Grafiken (sowohl schwebend als auch inline) in der Kopfzeile entfernen möchten. Diese werden entfernt und jede Datei wird erneut gespeichert. Das Makro wirkt sich nicht auf andere Grafiken im Dokument aus.

_Hinweis: _

Wenn Sie wissen möchten, wie die auf dieser Seite (oder auf einer anderen Seite der WordTips-Websites) beschriebenen Makros verwendet werden, habe ich eine spezielle Seite vorbereitet, die hilfreiche Informationen enthält.

WordTips ist Ihre Quelle für kostengünstige Microsoft Word-Schulungen.

(Microsoft Word ist die weltweit beliebteste Textverarbeitungssoftware.) Dieser Tipp (311) gilt für Microsoft Word 97, 2000, 2002 und 2003. Sie finden eine Version dieses Tipps für die Multifunktionsleistenschnittstelle von Word (Word 2007) und später) hier: