Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
DiscussionsAccessExcelInfoPathOutlookPowerPointPublisherWord
DirectoryUser Groups
Related Topics
Outlook ExpressInternet ExplorerWindowsMS Server ProductsMore Topics ...

MS Office Forum / Word / Mailmerge and Fax / June 2005

Tip: Looking for answers? Try searching our database.

How do I save a mail merge form letter to separate files?

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
MTD - 23 Jun 2005 21:02 GMT
I have successfully merged data into a form letter (47 pages) but I need to
save each page as a separate document file.  Is there an easy, automated way
to accomplish this?
larrynospam@nospamjbmsystems.com - 23 Jun 2005 21:41 GMT
Hi,

Yes, but you would have to go to a commercial (not free) software such as my
OctoTools.  The software can easilly handle what you are doing (including
the mail merge) but is better justified for automatically processing medium
to high volume throughputs.  If you have a volume process requirement, let
me know and we can discuss further how to automate the process. Thanks for
your time.

Larry T      larry "at" jbmsystems "dot" com   978 535-7676
Doug Robbins - 24 Jun 2005 05:07 GMT
Here is a free method

Sub splitter()

' splitter Macro

' Macro created by Doug Robbins to save each letter created by a mailmerge
as a separate file.

Dim i As Long, Source as Document, Target as Document, Letter as Range
Set Source = ActiveDocument
For i = 1 to Source.Sections.Count
   Set Letter = Source.Sections(i).Range
   Letter.End=Letter.End-1
   Set Target = Documents.Add
   Target.Range=Letter
   Target.SaveAs FileName:="Letter" & i
   Target.Close
Next i

End Sub

Or, if you want each file to be named based on one of the fields in the data
source,
here's a method that I have used that involves creating a separate
catalog type mailmerge maindocument which creates a word document containing
a table in each row of which would be your data from the database that you
want to use as the filename.

You first execute that mailmerge, then save that file and close it.  Then
execute the mailmerge that you want to create the separate files from and
with the
result of that on the screen, run a macro containing the following code
and when the File open dialog appears, select the file containing the table
created by the first mailmerge

' Throw Away Macro created by Doug Robbins
'
Dim Source As Document, oblist As Document, DocName As Range, DocumentName
As String
Dim i As Long, doctext As Range, target As Document
Set Source = ActiveDocument
With Dialogs(wdDialogFileOpen)
   .Show
End With
Set oblist = ActiveDocument
Counter = 1
For i = 1 To oblist.Tables(1).Rows.Count
   Set DocName = oblist.Tables(1).Cell(i, 1).Range
   DocName.End = DocName.End - 1

   'Change the path in the following command to suit where you want to save
the documents.
   DocumentName = "I:\WorkArea\Documentum\" & DocName.Text
   Set doctext = Source.Sections(i).Range
   doctext.End = doctext.End - 1
   Set target = Documents.Add
   target.Range.FormattedText = doctext
   target.SaveAs FileName:=DocumentName
   target.Close
Next i

Signature

Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP

>I have successfully merged data into a form letter (47 pages) but I need to
> save each page as a separate document file.  Is there an easy, automated
> way
> to accomplish this?
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.