Need Help with a Label Printing Report

  • Thread starter Thread starter Judy Freed
  • Start date Start date
J

Judy Freed

Hi All

I appreciate any guidance. I am converting an old Paradox 3.5 database to
Access XP. The database contains nothing more than names and addresses that
will be used to generate labels. There are over 100 names in the database,
but not all will recieve labels at each printing. I have created a form in
datasheet view that contains a checkbox. The user checks the boxes for
individuals that need labels, and a macro prints the labels and clears the
checkmarks for the next printing.

The problem is this: During each print run, some names need one label, some
need 2, some as many as 6 - and it will vary from print run to print run.

I can see what they did in Paradox. They had a script that displayed the
table and then I think they pressed F2 at each record they wanted to print.
It appears that these records were then copied to another table - if they
pressed F2 six times at one name, the record was copied 6 times for 6
labels.

What would be the best way to accomplish this in Access XP? I have a feeling
this is going to be pretty simple, but because I am so tied to my little
datasheet with the checkboxes that I am missing it.

Any guidance is much appreciated.

Thanks

Judy Freed
 
Judy

One approach would be to use a pair of list boxes on a form. The box on the
left would hold all 100+ names. The box on the right will hold the names
for which you want address labels. If you want more than one for a name,
that name will show more than once.

You'd need to create a table to hold the prospective labels/names. On the
form, add a command button that takes a name you've highlighted in the left
listbox and adds it to the prospective labels table. The right listbox is
based on the prospective labels table, and needs to get requeried after each
new name is added.

For "oops", add a command button that lets you highlight a name on the
right, then "removes" it (from the underlying prospective labels table) when
clicked.

Good luck!

Jeff Boyce
<Access MVP>
 
Add a field for quantity rather than a check box. Then enter the number of
copies and leave some at 0. Then create a table "tblNums" with a single
numeric field "Num". Add records with values 1 through the highest possible
quantity. Add the table to the record source of your report and set the
criteria under the Num field to
<=[Quantity]
 
Judy said:
I appreciate any guidance. I am converting an old Paradox 3.5 database to
Access XP. The database contains nothing more than names and addresses that
will be used to generate labels. There are over 100 names in the database,
but not all will recieve labels at each printing. I have created a form in
datasheet view that contains a checkbox. The user checks the boxes for
individuals that need labels, and a macro prints the labels and clears the
checkmarks for the next printing.

The problem is this: During each print run, some names need one label, some
need 2, some as many as 6 - and it will vary from print run to print run.


The way I would approach this is to change the check box to
an Integer field (I'll call it PrintLabel). Then, instead
of checking the check box, you would enter the number of
copies.

Next create a new table (Numbers) with only one field named
CopyNum. Populate the table records with sequential numbers
from 1 to more than the maximum number of copies you'll ever
need.

Add the Numbers table to the label report's record source
query and make sure there is no join line between them. Add
the CopyNum field to the query's field list with the
criteria <=PrintLabel

The criteria for the PrintLabel field would simply be >0

The report should now produce each label the number of times
specified in the PrintLabel field. You could even have a
text box bound to the CopyNum field on the label to
serialize each person's labels.
 
Many thanks to all who responded. All methods worked very well. In the
end, I decided to go with the Numbers table and the CopyNum field. Again,
many thanks!!!!

Judy Freed
 
Back
Top