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 / September 2004

Tip: Looking for answers? Try searching our database.

seperate files from merge and naming them

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
roortman - 02 Sep 2004 15:41 GMT
Hello to you all.
I am currently busy with something quite hard on my work.
I made a regular Mailmerge works fine. But now i want the merge to b
saved in different files, not 1 large file.
I used this code to accomplish this:

> Sub BreakOnPage()
> ' Used to set criteria for moving through the document by page.
> Application.Browser.Target = wdBrowsePage
>
> For i = 1 To ActiveDocument.BuiltInDocumentProperties("Number o
> Pages")
>
> 'Select and copy the text to the clipboard.
> ActiveDocument.Bookmarks("\page").Range.Copy
>
> ' Open new document to paste the content of the clipboar
> into.
> Documents.Add
> Selection.Paste
> ' Removes the break that is copied at the end of the page, if any.
> Selection.TypeBackspace
> ChangeFileOpenDirectory "C:\"
> DocNum = DocNum + 1
> ActiveDocument.SaveAs FileName:="test_" & DocNum & ".doc"
> ActiveDocument.Close
>
> ' Move the selection to the next page in the document.
> Application.Browser.Next
> Next i
> ActiveDocument.Close savechanges:=wdDoNotSaveChanges
> End Sub
>  

Works fine, when running this code it makes seperate files name
test1.doc, test2.doc etc. etc.

Now comes the hard thing, i want the filename to excist in 2 things:
the username of the person (which is supplied from the sourcefile) an
2nd the application name (which is also supplied from the sourcefile)

Doing this should make names like:

Robbert Windows xp.doc

So who knows what code to use???

PLS HELP ME OUT!!

--
Message posted from http://www.ExcelForum.com
Doug Robbins - 03 Sep 2004 10:29 GMT
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

Please respond to the Newsgroup for the benefit of others who may be
interested.   Questions sent directly to me will only be answered on a paid
consulting basis.

Hope this helps,
Doug Robbins - Word MVP

> Hello to you all.
> I am currently busy with something quite hard on my work.
[quoted text clipped - 46 lines]
> ---
> Message posted from http://www.ExcelForum.com/

Rate this thread:






 
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.