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: Saving Personalized Copies of a Document.
by Allen Wyatt
(last updated January 17, 2015)
Sub SaveNameFiles() Dim sName As String Dim sFile As String Open "c:/names.txt" For Input As #5 On Error Resume Next Do While Not EOF(5) ' get the name Line Input #5, sName sFile = sName & ".doc" sFile = "c:\mypath\" & sFile ActiveWindow.ActivePane.View.SeekView = _ wdSeekCurrentPageHeader Selection.WholeStory Selection.Delete Selection.TypeText Text:=sName ActiveWindow.ActivePane.View.SeekView = _ wdSeekMainDocument ActiveDocument.SaveAs FileName:=sFile Loop Close #5 ActiveWindow.ActivePane.View.SeekView = _ wdSeekCurrentPageHeader Selection.WholeStory Selection.Delete ActiveWindow.ActivePane.View.SeekView = _ wdSeekMainDocument End SubThe tricky part of the macro is using the .SeekView property to specify which story in the document you want to work with. As implemented here, the .SeekView property is used repeatedly to switch between the header area and the main document. Note, as well, that the sFile variable specifies the name of the file in which the personalized document will be saved. Right after the name is grabbed from the text file, the sFile variable is constructed by adding the .doc file extension and the path to the front of the file name. (You should change the path to one that is appropriate for your system.) The actual save operation is relatively easy; the .SaveAs method is used with a filename. This is the most error-prone line of code in the macro, since one of the names read from the file could include characters that are inappropriate for valid filenames. If this is the case, an error is generated and the macro continues with the next line. The document, however, will not be saved under the offending name. After the loop (grabbing names and saving) is completed, the header area is cleared and the .SeekView is switched back to the main document.
WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (195) 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: Saving Personalized Copies of a Document.
Learning Made Easy! Quickly teach yourself how to format, publish, and share your content using Word 2013. With Step by Step, you set the pace, building and practicing the skills you need, just when you need them! Check out Microsoft Word 2013 Step by Step today!
After using Word for a while, it is easy to accumulate quite a few documents. At some point you may want to make a change ...Discover More
Save a document for the first time, and Word helpfully suggests a filename you can use or change. If you want this ...Discover More
Word allows you to establish links from one document to another. When you open a document containing these links, you may ...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 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.