Please Note: This article is written for users of the following Microsoft Word versions: 2007 and 2010. If you are using an earlier version (Word 2003 or earlier), this tip may not work for you. For a version of this tip written specifically for earlier versions of Word, click here: Removing Pictures from Multiple Files.
by Allen Wyatt
(last updated December 15, 2016)
Rosario has a huge number of documents (about 44,000 of them), each of which contains a graphic in the header. She is looking for a way to remove all those graphics without the necessity of opening and modifying each document manually.
Fortunately this can be handled by creating a macro. All you need to do is put all the documents in a folder and then use the macro to search through the folder, open each document, remove the graphic, and save each document. This can be done with a macro like the following:
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 = "*.docx" ' 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
This macro makes the assumption that you want to remove all the graphics (both floating and inline) in the header. These are removed, and each file is resaved. The macro doesn't affect any other graphics in the document.
You should note that this particular macro checks for files that use the DOCX extension. If you have documents that use different extensions (such as DOCM or the older DOC), you'll need to run the macro multiple times. Between each run, change the line that sets the pattern for the file extension. (The line has the comment at the end that says, "file pattern to match".)
WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (9744) applies to Microsoft Word 2007 and 2010. You can find a version of this tip for the older menu interface of Word here: Removing Pictures from Multiple Files.
Do More in Less Time! Are you ready to harness the full power of Word 2013 to create professional documents? In this comprehensive guide you'll learn the skills and techniques for efficiently building the documents you need for your professional and your personal life. Check out Word 2013 In Depth today!
Nothing beats a screen shot when you are trying to convey information about using the computer. With just a couple of ...Discover More
When you insert an object into your document, it is anchored to a paragraph. If you want to change the paragraph to which ...Discover More
An object anchor is used to signify the point at which an object is inserted into a document. If you want to see these ...Discover More
FREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
Got a version of Word that uses the ribbon interface (Word 2007 or later)? This site is for you! If you use an earlier version of Word, visit our WordTips site focusing on the menu interface.