Open Word 2007 Documents to the Last Saved Cursor Position

Last Updated Oct 27, 2009 10:21 AM EDT

You know how Excel remembers exactly where you left your cursor when you re-open a spreadsheet? You know how Word doesn't? A couple of weeks ago, I was amazed to learn that Word really does bookmark your last cursor position, and simply pressing Shift+F5 takes you there. Unfortunately, it only works on .doc files, not the newer .docx.

Then reader drew.lindsay clued me in to a simple change you can make to Word so it always opens your documents -- both .doc and .docx -- to the last saved cursor position. Even better: There's no need to press any shortcut keys. It works automatically, just like Excel.


The trick is updating your normal template with a few macros which Drew pointed me to at a Google Group for Word. Bt don't be put off by talk about macros. Even if you've never done this before, you should be able to complete this free hack in less than 5 minutes.

Start by opening the Macros dialog box in Word. If you're using an older version of Word, click the Tools menu and then choose Macros | Macros. If you have Word 2007, click the Office button in the upper left corner, then select Word Options. On the Popular tab, select Show Developer tab in the Ribbon. Close the Options, click the Developer tab, and click Macros.

On the Macros tab, be sure you've selected All active templates and documents, and then, in the macro name, enter this: FileSave. Click Create.

In the macro editor, enter this text:

On Error Resume Next
ActiveDocument.Bookmarks.Add Range:=Selection.Range, name:="OpenAt"
ActiveDocument.Save
Save and close the macro.

Now you have to repeat that general process two more times. Enter the macro name: "FileSaveAs" and click Create. Then enter this text in the macro editor:

On Error Resume Next
ActiveDocument.Bookmarks.Add Range:=Selection.Range, name:="OpenAt"
Dialogs(wdDialogFileSaveAs).Show
Save and close the macro.

Finally, here is the name of the final macro: AutoOpen
And the text to enter:

If ActiveDocument.Bookmarks.Exists("OpenAt") = True Then
ActiveDocument.Bookmarks("OpenAt").Select
End If

You should now find that when you open a Word document, the page automatically scrolls to the position where you last positioned the cursor.