it's actually not difficult, but requires adding a simple table to the
database, making a minor modifications to the form you call the report from,
and editing the report as well. explaining the setup takes some time, so sit
down and get comfortable, and read on.
first, create a table of numbers, as
tbl00Numbers
Num (data type Number, field size Byte)
assuming that the labels are sheetfed, populate the table with at least
enough records to "fill" a sheet, as
1
2
3
....
<however many records you need>
next, add an unbound textbox control to your form, i'll call it txtPosition.
last, open the labels report in Design view and click on the RecordSource
property and then click the Build button (...) at the right. if you get a
message box, click Yes.
a "query design grid" pane opens. if the RecordSource is a query, then
you're basically seeing the query in Design view. if the RecordSource is a
table, then add the fields used in the report to the grid. next, you have to
create a Union query to "pad" the recordset with blank records so the label
will print in the position you want. i'll give you an example: say your
report is based on a table called Table1, which uses three fields, as
Table1
FieldA (text)
FieldB (number)
FieldC (text)
open the query design grid from the report's RecordSource property, as
described above, and add the three fields to the Design grid. then go to the
extreme left of the toolbar, click the down arrow on the View button, and
choose SQL View. the SQL statement shows as
SELECT FieldA, FieldB, FieldC
FROM Table1;
to create a Union query, edit the SQL statement, as
SELECT FieldA, FieldB, FieldC, 0 As Num
FROM Table1
UNION ALL SELECT "", 0, "", Num
FROM tbl00Numbers
WHERE Num<Forms!FormName!txtPosition;
replace FormName with the name of the form where you added the unbound
textbox control. note that the "fake" fields in the second part of the SQL
statement match the data types of the fields in Table1. (recommend you read
up on Union queries in Help, so you'll understand what we're doing here.)
close the SQL window, and save. now you're back in the report's Design view.
open the Sorting and Grouping box, and add Num as the first field sorted on
(above any other fields you may already be sorting/grouping on), and sort
Descending. close and save the report.
okay, say the report labels print Down and then Across, and say the label
sheet is two columns of 15 labels each. you want to print your label(s)
starting in the fifth label of the second column. so add 5 to 15 = 20. open
the form in Form view and enter 20 in the control txtPosition, and exit the
control. leave the form open, and open the labels report in Preview; you
should see the first column as blank and the first label in the fifth
position of the second column.
hth