Chapter 3. Reports
You may devote days, weeks, or even months of work to designing
tables and queries and writing the macros and code to put an
application together, but along with your
application's forms, its reports
are the application. Because of this,
you'll want make them as clear and attractive as
possible.
The first solution in this chapter shows you how to do something that
should be (and is) easy: printing a report with line numbers. Next,
you'll learn how to print the value of query
parameters on a report based on a parameter query and how to create
an attractive multiple-column report.
The next group of solutions will teach you how to use Visual Basic
for Applications (VBA) code and macros to print a message on a report
only if certain conditions are met, how to create
telephone-book-style page-range indicators, how to print a bar graph
on a report using rectangle controls, and how to calculate page
totals.
Next, you'll employ more challenging VBA code to
work around the limitations of the CanGrow/CanShrink properties and
prevent blank rows on reports by combining an entire address into a
single expression for a mailing-label report. You'll
see how to suppress printing a report if there are no records to
print. Using an event procedure run from the
report's Format event, you'll learn
how to print one set of headers and footers on odd pages and another
(mirror-image) set on even pages. Then you will learn how to use the
Line method to draw lines or rectangles on a report—in this
case, to make a line the same height as a variable-height text box.
Next, you'll learn how to alternate gray bars on
every other row of the report.
The final three solutions in this chapter show you how to tie a
report's recordset to the filtered recordset of a
form, how to prevent your report from breaking at an inappropriate
place (such as right after a group header), and finally, in the most
complex solution in this chapter, how to modify a
report's grouping and sorting fields on the fly.
|