1 filename per each Merged Letter

J

J.Fandango

Hi!
I'm a totally newbye, so haven't a clue how to start: I've
created a Merged document of about 100 letters, and would
like to save each letter under it's own filename, getting
this filename from a specific field in the document.

How can I automatize this filename saving?

I appreciate all your help.

Thanks.
J.Fandango
 
C

Cindy M -WordMVP-

Hi J.Fandango,
I'm a totally newbye, so haven't a clue how to start: I've
created a Merged document of about 100 letters, and would
like to save each letter under it's own filename, getting
this filename from a specific field in the document.

How can I automatize this filename saving?
Besides the link to my site, you might also want to see Doug
Robbin's approach posted at word.mvps.org

And I believe Graham Mayor provides yet another way to go
about it.

Cindy Meister
INTER-Solutions, Switzerland
http://homepage.swissonline.ch/cindymeister (last update Jun
8 2004)
http://www.word.mvps.org

This reply is posted in the Newsgroup; please post any
follow question or reply in the newsgroup and not by e-mail
:)
 
D

Doug Robbins - Word MVP

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


--
Please post any further questions or followup to the newsgroups for the
benefit of others who may be interested. Unsolicited questions forwarded
directly to me will only be answered on a paid consulting basis.

Hope this helps
Doug Robbins - Word MVP
 
J

j.fandango

Hi Cindy,
i've used your code from your topic "Save each merged
letter as a separate file", but i've missed something i'm
not sure, because i get the following message: "the
selection does not consist of heading levels".
On the 1st paragraph (formatted as level 1) i've got 3
linked fields, which i'd like to be used as the filename.

Could you give me a hand on this, please?

Thanks again.
JF
 
G

Guest

sorry Cindy...my fault...your code works...i'd put a normal
blank line as 1st one. I've deleted it.
 
J

j.fandango

Cindy,
everything works now...I would still need your help in
order to change the filename [.SaveAs
FileName:="MergeResult" & CStr(docCounter)] into a new one
which is the concatenation of 3 linked/imported fields from
my access table (which were imported into the 1st line
formatted as level, on my merged doc).

What would you suggest?

thanks again.

jf
 
J

j.fandango

Cindy,
everything works now...I would still need your help in
order to change the filename [.SaveAs
FileName:="MergeResult" & CStr(docCounter)] into a new one
which is the concatenation of 3 linked/imported fields from
my access table (which were imported into the 1st line
formatted as level, on my merged doc).

What would you suggest?

thanks again.

jf
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top