Please Note: This article is written for users of the following Microsoft Word versions: 97, 2000, 2002, and 2003. If you are using a later version (Word 2007 or later), this tip may not work for you. For a version of this tip written specifically for later versions of Word, click here: Examining Tracked Changes in a Macro.
Written by Allen Wyatt (last updated October 31, 2015)
This tip applies to Word 97, 2000, 2002, and 2003
If you need to develop a macro to process a document in which changes have been tracked (using the Track Changes feature), you may wonder how you can determine the number of changes in the document and how you can look at each of the changes, programmatically. It isn't that tough to do if you remember that the changes are organized in using the Revisions collection. This means that you can determine the number of changes using this code:
iNumChanges = ActiveDocument.Revisions.Count
Just like any other collection, you can step through each member of the Revisions collection and figure out various information about the change represented in the member. While the details of what properties and methods belong to the Revisions collection is much too voluminous for this tip, you can determine the type of each change by looking at the Type property, in this manner:
vChange = ActiveDocument.Revisions(1).Type
At this point vChange will be equal to one of 14 possible revision types. These revision types can be referenced by the built-in constants wdNoRevision, wdRevisionDelete, wdRevisionInsert, wdRevisionParagraphProperty, wdRevisionReconcile, wdRevisionSectionProperty, wdRevisionStyleDefinition, wdRevisionConflict, wdRevisionDisplayField, wdRevisionParagraphNumber, wdRevisionProperty, wdRevisionReplace, wdRevisionStyle, and wdRevisionTableProperty.
Additional information can be found in Word's Help system or by searching the Internet for the phrase "revisions collection".
Note:
WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (8914) applies to Microsoft Word 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Word (Word 2007 and later) here: Examining Tracked Changes in a Macro.
Create Custom Apps with VBA! Discover how to extend the capabilities of Office 2013 (Word, Excel, PowerPoint, Outlook, and Access) with VBA programming, using it for writing macros, automating Office applications, and creating custom applications. Check out Mastering VBA for Office 2013 today!
Turn Track Changes on, and you can easily see where you've made changes throughout a document. If you want to print only ...
Discover MoreWhen a group of people edits a document with Track Changes turned on, it can be tempting for one of the editors to use ...
Discover MoreThe Track changes feature in Word is a great help in editing documents, particularly if you are working with others or ...
Discover MoreFREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
2015-11-01 07:05:10
Ken Endacott
Some other useful statements.
Turn display of revisions on or off:
ActiveDocument.ShowRevisions = True
Show specific revisions, set to True or False as requited:
ActiveWindow.View.ShowFormatChanges = True
ActiveWindow.View. ShowInsertionsAndDeletions = True
ActiveWindow.View .ShowComments = True
Display the Track Changes option form:
Call Dialogs(wdDialogToolsOptionsTrackChanges).Show
Putting these statements into a macro that prompts to remove individual revisions from the current cursor position forward:
Sub RemoveIndividualRevisions()
Dim Rv As Revision
Dim aRange As Range
Dim k As Long
ActiveDocument.ShowRevisions = True
ActiveWindow.View.ShowFormatChanges = True
ActiveWindow.View.ShowInsertionsAndDeletions = True
ActiveWindow.View.ShowComments = False
Set aRange = Selection.Range
aRange.End = ActiveDocument.Range.End
For Each Rv In aRange.Revisions
Rv.Range.Select
k = MsgBox("Do you want to remove this revision", vbYesNoCancel, "Track Change Revisions")
If k = vbCancel Then Exit Sub
If k = vbYes Then Rv.Accept
Next Rv
End Sub
2015-10-31 20:32:43
Colin Pernet
Thanks from Colin In Australia
Got a version of Word that uses the menu interface (Word 97, Word 2000, Word 2002, or Word 2003)? This site is for you! If you use a later version of Word, visit our WordTips site focusing on the ribbon interface.
Visit the WordTips channel on YouTube
FREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2024 Sharon Parq Associates, Inc.
Comments