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 / May 2006

Tip: Looking for answers? Try searching our database.

print a multipage letter on different papers

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
PARSONS - 05 May 2006 16:54 GMT
The mail merge contains 50 3-pg letters.  How do you get it to print the
first pg of every letter on letterhead and the 2nd and 3rd on another paper.
We've tried everything for 2 days and nothing works!  IS IT EVEN POSSIBLE?  
Peter Jamieson - 05 May 2006 16:57 GMT
This appears to be the same as the question  posted by "linda" which I
replied to a couple of hours ago:

I think the only way to do this is to use VBA to perform a separate merge
for each document (or you may be able to merge to a new document and then
split it up).

You can try the following VBA:

Sub PrintOneDocPerSourceRec()
Dim intSourceRecord
Dim objMerge As Word.MailMerge
Dim strOutputDocumentName As String
Dim TerminateMerge As Boolean

' Need to set up this object as the ActiveDocument changes when the
' merge is performed. Besides, it's clearer.

Set objMerge = ActiveDocument.MailMerge
With objMerge

 ' If no data source has been defined, do it here using OpenDataSource.
 ' But if it is already defined in the document, you should not need
 ' to define it here.

 ' .OpenDataSource _
 ' Name:="whatever"

 intSourceRecord = 1
 TerminateMerge = False

 Do Until TerminateMerge
   .DataSource.ActiveRecord = intSourceRecord

   ' if we have gone past the end (and possibly, if there are no records)
   ' then the Activerecord will not be what we have just tried to set it to

   If .DataSource.ActiveRecord <> intSourceRecord Then
     TerminateMerge = True
   ' the record exists
   Else

     .DataSource.FirstRecord = intSourceRecord
     .DataSource.LastRecord = intSourceRecord
     .Destination = wdSendToPrinter 'please check the constant name
     .Execute

     intSourceRecord = intSourceRecord + 1
   End If
 Loop
End With
End Sub

If you haven't used Word VBA Macros before, see

http://word.mvps.org/FAQs/MacrosVBA/CreateAMacro.htm

Peter Jamieson

> The mail merge contains 50 3-pg letters.  How do you get it to print the
> first pg of every letter on letterhead and the 2nd and 3rd on another
> paper.
> We've tried everything for 2 days and nothing works!  IS IT EVEN POSSIBLE?

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.