Printing address labels directly to an evelope

J

John Baker

I have spent much time creating and controlling the printing of address
labels.
But what I would like to do now is have address labels print directly on to
an envelope.
Can anyone help me with the code to do this. I would like the user to be
able to choose the envelope size from a list and then print all addresses
generated from a query to envelopes.

Any help greatly appreciated.
John Baker
 
F

fredg

I have spent much time creating and controlling the printing of address
labels.
But what I would like to do now is have address labels print directly on to
an envelope.
Can anyone help me with the code to do this. I would like the user to be
able to choose the envelope size from a list and then print all addresses
generated from a query to envelopes.

Any help greatly appreciated.
John Baker

Printing onto an envelope is no different than printing onto a sheet
of paper.
1) You don't want a multi-column label report.

2) Set up a regular report that will print the Name, Address, and
City, etc. onto a piece of paper, at the LEFT Margin and at the Top of
the section.
Set the Detail Section's ForceNewPage property to After Section.

3) Change the Paper size to the correct Envelope size by going to File
+ Page Setup + Page.
The actual margin settings will be determined by how the envelope is
fed into the printer. Flap side first will be portrait, Short side
first will be Landscape. Set the Orientation here.

4) While in Page SetUp, click on the margins tab and set the print
position by setting the margins. If the Orientation is Landscape, and
you are using a #10 business envelope, I would set the Top to 2" and
the left margin to 3.75". Note: see #7 below.

5) Your printer must, of course, be able to auto-feed envelopes.

6) Print a sample on a sheet of paper. Hold it up against an envelope.
Adjust the print position, if needed, by resetting the margins.

7) Note: The Envelope Size, Orientaion, Margins, etc., can only be set
in Design View (even using code), so it won't be a good idea to have
the user select the envelope. The differences in Size between
envelopes may be adjusted for by moving the controls on the report by
code when the report is run,
i.e. Code the Report's Detail Format event:

Dim c as Control
Dim intX as Integer
intX = If forms!FormName!OptionControlName
For each c in Me.Section(0).Controls
If intX = 1 then
c.Left = 1.5 * 1440
ElseIf intX= 2 Then
c.left = 3.75 * 1440
Else
c.left = 5 * 1440
End If
Next c

There are 1440 Twips per inch, so the above code will move the
controls according to the value selected by the user on a form Option
Group.

In this case, the above assumes the report left margin has been set to
0" (or whatever the minimum setting is for your printer).
The form must remain open while the report is run.

For different Orientations, I would use 2 reports, one for Portrait,
one for Landscape, rather than try to move each control's top property
as well as it's left.

A bit of experimentation should be all you need.
 

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