Please Note: This article is written for users of the following Microsoft Word versions: 2007, 2010, 2013, and 2016. If you are using an earlier version (Word 2003 or earlier), this tip may not work for you. For a version of this tip written specifically for earlier versions of Word, click here: Updating Many Template References.
by Allen Wyatt
(last updated April 7, 2018)
Over the years Phillip's company has developed thousands and thousands of Word documents. They recently changed their network infrastructure to use different servers and upgraded computers for everyone in Phillip's department. When someone opens one of those pre-existing documents, it looks for a template that existed in the old infrastructure, but is no longer available. This means that the document takes a long time to open, after which point they can change the bad template reference. If Phillip has to open each of the old documents it is going to take days and days to do it, so he wonders if there is any way to change the template references more efficiently, without the need to open each document.
This can be a real bother—there are few things worse (in the office) than staring at a computer screen, waiting for some process to finish. What is happening is that Word thinks your templates are in a particular location, and it asks Windows to go get the template at that location. Windows dutifully tries (and tries and tries) to comply, repeatedly looking for the location. Each attempt times out, and the aggregate time spent in this vain attempt is quite noticeable.
A solution would be to use a macro to load each document in a directory and change the template attached to that document. The following is an example of such a macro:
Sub BatchTemplateChange() Dim sPathToTemplates As String Dim sPathToDocs As String Dim sDoc As String Dim dDoc As Document Dim sNewTemplate As String Dim i As Long On Error Resume Next Application.ScreenUpdating = False sNewTemplate = "normal.dotx" 'new template name sPathToDocs = Options.DefaultFilePath(wdDocumentsPath) & "\" sPathToTemplates = Options.DefaultFilePath(wdUserTemplatesPath) & "\" sDoc = Dir(sPathToDocs & "*.doc") While Len(sDoc) <> 0 Set dDoc = Documents.Open(FileName:=sPathToDocs & sDoc) dDoc.AttachedTemplate = sPathToTemplates & sNewTemplate dDoc.Close wdSaveChanges sDoc = Dir i = i + 1 Wend Application.ScreenUpdating = True MsgBox "Finished: " & i & " documents changed" End Sub
Note that the macro loads each document in the default document location, but that doesn't necessarily speed up the loading. The benefit of using the macro is that you can start it running and allow it to work while you are away from the computer.
Additional ideas for a programmatic approach can be found in the following article, which may be helpful to some readers:
WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (11405) applies to Microsoft Word 2007, 2010, 2013, and 2016. You can find a version of this tip for the older menu interface of Word here: Updating Many Template References.
The First and Last Word on Word! Bestselling For Dummies author Dan Gookin puts his usual fun and friendly candor back to work to show you how to navigate Word 2013. Spend more time working and less time trying to figure it all out! Check out Word 2013 For Dummies today!
Wouldn't it be great to be able to track what changes are made to a template, over time? Unfortunately, Word doesn't ...Discover More
Templates are a great way to share styles, macros, and other settings among various documents. One thing that isn't ...Discover More
When you attach a template to a document, you expect that template to stay attached. When you share the document with ...Discover More
FREE SERVICE: Get tips like this every week in WordTips, a free productivity newsletter. Enter your address and click "Subscribe."
Got a version of Word that uses the ribbon interface (Word 2007 or later)? This site is for you! If you use an earlier version of Word, visit our WordTips site focusing on the menu interface.