Hi, thanks for the reply.
I just specify the name of the query in the reports record source.
Have 10 sets of tables one set for each customer having thousands of address
in each set of tables.
A better design - a FASTER, and MORE EFFICIENT design as well - would
be to have one table of addresses, with an indexed CustomerID field.
Having the ID field keeps the customers' data separate; you might have
some redundancy if the same address appears in two or more customers'
data, but no more redundancy than you have now.
Have 10 forms one for each customer with a command button on it to print one
of the 10 reports.
If you really, really need to do it this way (and I'd recommend using
ONE form with a changable recordsource, not ten forms!), you'll need
VBA code in the Report's Open event to set the report's Recordsource
appropriately. With ten forms you can't easily refer to the calling
form in this code - what you might need to do is set a global variable
in the code that opens the form, and use the report's Open event to
read that variable.