Thread: Mail Merge
View Single Post
  #5   Report Post  
Posted to microsoft.public.word.mailmerge.fields,microsoft.public.word.pagelayout,microsoft.public.word.printingfonts
Peter Jamieson Peter Jamieson is offline
external usenet poster
 
Posts: 4,582
Default Mail Merge

If you can,
a. ensure that an experimental multi-section document with page 1 set up to
print to one tray and pages 2-n to print to a different tray prints as you
expect. If it doesn't, either Word doesn't work as it should or your printer
driver is not behaving correctly (which wouldn't surprise me).
b. If the behaviour in (a) is correct, try experimenting with merging to a
new document. with different trays for page 1 and pages 2-n. Select the
output document and use File|Page Setup to verify that page 1 and pages 2-n
are associated with the correct trays in all the sections. Then try printing
the document. If all is still OK, you have a workaround (merge to document
first then print), but there is an error in Word when merging directly to
printer. If it isn't OK, it suggests that even when merge is merging to a
new document, it is handling sections erroneously, in a different way from
when you set them up manually.

If you just need to produce the results you want, you can use a macro to
perform one merge for each record in the mail merge data source (this
assumes the simplest case where you aren't processing multiple records for
each letter), e.g.:

Sub OneMergePerSourceRec()
'


' NB, needs bettor error management and doubtless other things a VBA expert
' will point out.


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
.Execute
intSourceRecord = intSourceRecord + 1
End If
Loop
End With
End Sub


Peter Jamieson


"Neil" wrote in message
...
Hi Suzanne,

Not unsurprisingly, I've tried this. On both Word 2000 and 2003. Both
times, it didn't work.

Also tried HP 5200 and 8150 printers - same problem.

NEIL



"Suzanne S. Barnhill" wrote in message
...
Assuming this is a Letter-type merge, if you set the appropriate paper
trays
for "First page" and "Other pages" in the mail merge main document, you
*should* get the correct results in the merged document since each
"letter"
is a separate section, and the paper tray assignments are per-section.

--
Suzanne S. Barnhill
Microsoft MVP (Word)
Words into Type
Fairhope, Alabama USA
Word MVP FAQ site: http://word.mvps.org
Email cannot be acknowledged; please post all follow-ups to the newsgroup
so
all may benefit.

"Neil" wrote in message
...
Hi,

I need to print a two page MM document, the first on letterhead and the
second on plain. When I merge, the printer prints the first page on
letterhead and then all other pages on plain, it seeing pages 3,5,7 etc
as
other pages, not first pages.

How can I get round this?

Apart fromt he obvious - print all page 1s first then all page 2s and
sit
there all day mnually inserting!

Cheers,

NEIL