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.
With more than 50 non-fiction books and numerous magazine articles to his credit, Allen Wyatt is an internationally recognized author. He is president of Sharon Parq Associates, a computer and publishing services company.
Learn more about Allen...
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: Creating Files with Mail Merge.
The standard mail merge capabilities of Word allow you to merge directly to a printer or to a new document. Depending on your Word version and installation, you may also be able to merge to a series of e-mail messages. (Each record in the data source would create an individual e-mail message.)
There may be times, however, when you need to create an individual document for each of the data source records. Unfortunately, Word does not provide a way to do this. Fortunately you can create a macro to take care of the task for you. The following is a macro that will "pull apart" a document created by the mail merge feature. Each section of the document (there is one section per data source record) is pulled out and saved in its own document file.
Sub Splitter() Dim numlets As Integer Dim Counter As Integer Dim BaseName As String Dim DocName As String Selection.EndKey Unit:=wdStory numlets = Selection.Information(wdActiveEndSectionNumber) If numlets > 1 Then numlets = numlets - 1 Selection.HomeKey Unit:=wdStory BaseName = "c:\Let" For Counter = 1 To numlets DocName = BaseName & Right("000" & LTrim(Str(Counter)), 3) ActiveDocument.Sections.First.Range.Cut Documents.Add Selection.Paste Selection.MoveLeft Unit:=wdCharacter, Count:=1 Selection.Delete Unit:=wdCharacter, Count:=1 ActiveDocument.SaveAs FileName:=DocName ActiveWindow.Close Next Counter End Sub
When the macro is run, it creates a series of files named Ltr001 through Ltrxxx, where xxx is the number of sections in the original document. Actually, the macro creates one "Ltr" file less than the number of sections in the document. The last section in the document is left in the original file (the one you are processing). If you want to change the filename or where the files are saved, change the setting for the BaseName variable in the macro.
WordTips is your source for cost-effective Microsoft Word training. (Microsoft Word is the most popular word processing software in the world.) This tip (1326) 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: Creating Files with Mail Merge.
Comprehensive VBA Guide Visual Basic for Applications (VBA) is the language used for writing macros in all Office programs. This complete guide shows both professionals and novices how to master VBA in order to customize the entire Office suite for their needs. Check out Mastering VBA for Office 2010 today!