|If this is your first visit, be sure to check out the FAQ by clicking the link above. You may have to register before you can post: click the register link above to proceed. To start viewing messages, select the forum that you want to visit from the selection below.|
||Thread Tools||Display Modes|
Macro to print only pages which got revised in word document
This is something I need help from you guys. I have a pretty large document and when these documents gets revised instead of searching where the changes happened and print them. Is there a way to print only the pages where changes happened.
I have found a Macro to do this, print only the pages where changes happened but when I hit print the document gets refreshed and all the cross referenced such as Table numbers, figure numbers get updated and when I used the macro it prints those pages as well.
Below is the Marco I have got from some user in this forum:
Dim revpagestart As Long, revpageend As Long, pageprint As String,
changedpages As String
pageprint = 0
changedpages = ""
Application.ScreenUpdating = False
currentselectionstart = Application.Selection.Start
currentselectionend = Application.Selection.End
If .Revisions.Count = 0 Then MsgBox ("There are no revisions in this
document"): GoTo Finish
If .Revisions.Count 20 Then If MsgBox("There are" +
Str(.Revisions.Count) + " revisions in this document. Checking and
printing them may take some time. Continue?", vbYesNo) = vbNo Then
For i = 1 To .Revisions.Count
revpageend = Selection.Information(wdActiveEndPageNumber)
revpagestart = Selection.Information(wdActiveEndPageNumber)
If .Revisions(i).Type = wdRevisionProperty Then GoTo Skip
If .Revisions(i).Type = wdRevisionParagraphProperty Then GoTo
If .Revisions(i).Type = wdRevisionSectionProperty Then GoTo
If pageprint = revpageend Then GoTo Skip
If revpagestart = revpageend Then
changedpages = changedpages + Str(revpageend) + ", "
pageprint = revpageend
If revpageend revpagestart Then
changedpages = changedpages + Str(revpagestart) + "-" +
Str(revpageend) + ", "
pageprint = revpageend
If changedpages = "" Then
MsgBox "There are no changed pages to print"
changedpages = Left(changedpages, Len(changedpages) - 2)
.Range = wdPrintRangeOfPages
.Pages = changedpages
Application.ScreenUpdating = True
|Thread||Thread Starter||Forum||Replies||Last Post|
|Revised pages need different footers -- how?||Dave||Page Layout||2||December 4th 09 03:04 AM|
|Word Viewer - viewing revised document without revision balloons?||DFerrier||Microsoft Word Help||0||April 17th 07 09:14 PM|
|number revised pages||Joyce||Microsoft Word Help||1||November 2nd 06 01:29 PM|
|Macro help - how to print a watermark on all pages!||[email protected]||Microsoft Word Help||5||July 25th 06 09:51 AM|
|Using a macro, is there a way to print a document in WORD and have||turner||Microsoft Word Help||0||November 9th 05 09:11 PM|