Word.Tips.Net Welcome toWord.Tips.Net

Helpful Links

Tips.Net Home
WordTips Home

Ask a Word Question
Make a Comment

Tips.Net Store

WordTips FAQ
WordTips Premium

Learn Access Now

Beauty Tips
Car Tips
Cleaning Tips
College Tips
Cooking Tips
Excel2007 Tips
ExcelTips
Family Tips
Gardening Tips
Health Tips
Home Tips
Money Tips
Organizing Tips
Pest Tips
Pet Tips
Wedding Tips
Word2007 Tips
WordTips

Advertise on the
WordTips Site

Newest Tips

Underlining Quoted Text

Changing Tabs Using the Ruler

Moving Drawing Objects

Standardizing Note Reference Placement

Selecting Printing of Color Pictures

Stubborn Foreign Languages

Sizing the Preview Pane

 

Marking Multiple Documents

Summary: After using Word for a while, it is easy to accumulate quite a few documents. At some point you may want to make a change to each of the documents in a folder. This tip explains the basics of how to easily make such a change, without the need to manually open and edit each document. (This tip works with Microsoft Word 97, Word 2000, Word 2002, and Word 2003.)

Glenn was searching for a way to "place a mark" on a document to indicate that it had been archived. Further, there were many such documents to mark, so a way to load them, add the mark, and save them again was desirable.

There are many different ways that such a task can be achieved. The differences are determined by exactly how the "mark" is placed in a document. Obviously, the word "Archive" (or some such terminology) could be added to a document, but that would affect the actual appearance of the document itself, which is often undesirable.

There is a solution that doesn't involve any visible marks to the document--use document properties. You can set a custom document property that would indicate whether the document has been archived or not. You could later search for the property to determine which files meet your criteria.

The following macro will load all the documents in a directory (and possibly any subdirectories), and either create or set a custom document property indicating that the document has been archived. In this case, the custom property is named Archive, and it is set to a True (Yes) condition.

Public Sub SetArchive()
    Dim bExists As Boolean

    With Application.FileSearch
        .LookIn = "C:\"             ' 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
            For i = 1 To .FoundFiles.Count
                ' Open the file
                Documents.Open FileName:=.FoundFiles(i)

                ' Begin document changes

                ' See if the doc variable exists
                bExists = False
                For Each varItem In ActiveDocument.CustomDocumentProperties
                    If varItem.Name = "Archive" Then
                        bExists = True
                        Exit For
                    End If
                Next varItem

                If Not bExists Then
                    ' Add and set document property
                    ActiveDocument.CustomDocumentProperties.Add _
                      Name:="Archive", LinkToContent:=False, _
                      Type:=msoPropertyTypeBoolean, Value:=True
                Else
                    'Already exists, so just set it
                    ActiveDocument.CustomDocumentProperties("Archive") = True
                End If

                ' End document changes

                ' Force document to be saved
                ActiveDocument.Saved = False
                ' Save and close the current document
                ActiveDocument.Close wdSaveChanges
            Next i
        Else
            ' Could not find any DOC files
            MsgBox "No files found."
        End If
    End With
End Sub

To use the macro, just change the directory specification in the fifth line of the macro (starts with .LookIn). Once it is run, the Archive property is created and set in each of the documents. You can view the results by loading one of the files, choosing File | Properties | Custom. The Archive property should be visible in the dialog box.

There is one interesting thing about this macro. Notice that you must "force" the document to be saved by setting the Saved property for the document to False. If you don't do this, then your custom property isn't saved. Why? Apparently Word doesn't recognize a change to a custom property--including adding one--as a reason to save a document. Thus, unless you force the Saved property to False, Word doesn't recognize that any changes have occurred in the document.

If you prefer to not use the custom property approach to marking your archive, you can make some changes to this macro to achieve the desired results. All you need to do is replace the code between the "Begin document changes" and "End document changes" comments with what you want done to the document. For instance, if you want a watermark placed in the document, then simply replace the noted code with code that creates and places the watermark.

Tip #1647 applies to Microsoft Word versions: 97 | 2000 | 2002 | 2003

Take Control! Master the real power behind Word! Successfully master the secrets of powerful formatting and create documents that stand out from the rest. Best of all, you can create documents that are easy to maintain and quick to change.
 
Check out Word 2007 Styles and Templates today!