How to Compare Word Documents Programatically using Word VBA
Word Documents are everywhere .. proposals, tenders, notes, technical papers. In many cases there are more than one authors and more than five reviewers. There is a devil in everyone which comes out when reviewing the document. Suggest some changes.. boldface some text, markup some paragraph and screw the document. If you are the author it is your responsibility to ensure that the changes get reflected. There are many document management solutions that are available for parallel working.
Just in case you get a document reviewed by your boss (and without track changes) and you want to know what he/she has done use the following
Sub CompareDoc()
Dim oDoc1 As Document
Dim oDoc2 As Document
Set oDoc1 = Documents.Open("D:\Changed Header.doc")
Set oDoc2 = Documents.Open("D:\Original Header.doc")
Application.CompareDocuments oDoc1, oDoc2, wdCompareDestinationNew, , , , , , True, True
End Sub
This compares two documents and creates a new document with Track Changes showing the changes.
There are lot of parameters to CompareDocuments method. The notable being CompareFormatting, CompareHeaders, CompareFootnotes. The last two ones are used if you want to know the changes made in Headers and Footers. Who knows you would have kept the same header from the document you cloned and your boss would have noticed and changed it. Do you want to take risk of ignoring that
See also
Comparing two Word Documents using Word VBA
Compare Files by Date