report footer in multiple column report

S

Song Su

Hi, all:

I usually put a line at report footer to indicate the end of the report. In
multiple column report, if the report ends at the first column, the line at
report footer is ok.

If the report ends at 2nd or 3rd column, the report footer with a line falls
on its own last blank page. How to solve it?

Thanks.
 
A

Aria

Hello Song Su,

I have watched your post and waited to see if someone with a lot more
experience than I would answer because I am a new user and don’t want to
steer you in the wrong direction. But since no one has replied thus far,
maybe the answer I received for my report question will also help you. Like
yours, my db is also for a school and includes a multicolumn report.
The settings I had in my report were:
1. Force New Page set to “Noneâ€.
2. Report Keep Together (Sorting and Grouping) was set to “Noâ€.

I received a reply from Marshall Barton, Access MVP, that resolved my
problem. You may want to try it as well.

Here is his reply:

"Because the report footer spans the entire width of the
report, it's not really appropriate for what you want. You
probably need to use a group footer, which will be in a
single column."

"To do that, insert a new group level at the top of the
sorting and grouping list using a constant expression (e.g.
=1). Then put the grand total text box in this new group
footer section. "

When I asked a follow-up question about the meaning of “= 1†his reply stated:

"If you look at the heading over the first column in the
sorting and grouping window, you will see that it is
'"Field/Expression". When you use an expression, it must
start with an = sign. In this case, the expression is a
trivial constant such as =1, but it could be anything that
is not the name of a field. E.g. you could use:
="My Dummy Footer"
to the same effect)."

Just so you know the background, I was trying to create a calculated control
at the end of one of the columns. What was happening is that the calculation
was alone on a single page and I couldn’t get it with the rest of the report.
Like I previously stated, I’m a new user and this may not be what you’re
looking for. But it's been quite a while since you posted your question. You
may want to try this while you wait for someone with more experience and
maybe a different solution. I hope this helps you as well.
 
A

Aria

Hello Song Su,

I have watched your post and waited to see if someone with a lot more
experience than I would answer because I am a new user and don’t want to
steer you in the wrong direction. But since no one has replied thus far,
maybe the answer I received for my report question will also help you. Like
yours, my db is also for a school and includes a multicolumn report.
The settings I had in my report were:
1. Force New Page set to “Noneâ€.
2. Report Keep Together (Sorting and Grouping) was set to “Noâ€.

I received a reply from Marshall Barton, Access MVP, that resolved my
problem. You may want to try it as well.

Here is his reply:

"Because the report footer spans the entire width of the
report, it's not really appropriate for what you want. You
probably need to use a group footer, which will be in a
single column."

"To do that, insert a new group level at the top of the
sorting and grouping list using a constant expression (e.g.
=1). Then put the grand total text box in this new group
footer section. "

When I asked a follow-up question about the meaning of “= 1†his reply stated:

"If you look at the heading over the first column in the
sorting and grouping window, you will see that it is
'"Field/Expression". When you use an expression, it must
start with an = sign. In this case, the expression is a
trivial constant such as =1, but it could be anything that
is not the name of a field. E.g. you could use:
="My Dummy Footer"
to the same effect)."

Just so you know the background, I was trying to create a calculated control
at the end of one of the columns. What was happening is that the calculation
was alone on a single page and I couldn’t get it with the rest of the report.
Like I previously stated, I’m a new user and this may not be what you’re
looking for. But it's been quite a while since you posted your question. You
may want to try this while you wait for someone with more experience and
maybe a different solution. I hope this helps you as well.
 
S

Song Su

Dear Aria,

It works great! Instead of report footer, using group footer solve the
problem. Thank you for your help.

Song
 
S

Song Su

Dear Aria,

It works great! Instead of report footer, using group footer solve the
problem. Thank you for your help.

Song
 
S

Song Su

Dear Aria,

Your solution works great. Using group footer instead of report footer solve
the problem. Thank you very much.

Song Su
 
S

Song Su

Dear Aria,

Your solution works great. Using group footer instead of report footer solve
the problem. Thank you very much.

Song Su
 
A

Aria

Hi Song Su,
I was nervous about offering advice when I am inexperienced with Access. But
I didn't want your question to remain unanswered if there was a possible
solution. I am so glad the answer I received helped you as well.
 
A

Aria

Hi Song Su,
I was nervous about offering advice when I am inexperienced with Access. But
I didn't want your question to remain unanswered if there was a possible
solution. I am so glad the answer I received helped you as well.
 
J

Joseph Greenberg

Do you know how, using this method, I can sequentially number the columns to
appear as pages? That is, I have a 2 column report, and I want, at the top
(or bottom) of each column to include a page number - so the second column
(appearing on the first physical page) would appear as page 2?
 
M

Marshall Barton

You can get the number of a column by using a text boxes
with expressions
Left column: =2 * Page
Right column: =2 * Page - 1

However, the only thing you can make appear right under the
last detail in a group is the group footer section. Unless
you can guarantee that an entire group will fit in a single
column, you may not get a desireable result from using the
group footer.

The Page Footer section is guaranteed to appear at the
bottom of every page (unless you do something to hide it),
so maybe that would be better to use. Since the page footer
section spans the entire width of the page, you will need
one text box in the left side of the section and another on
the right side.
 
J

Joseph Greenberg

See, but this is what I don't understand - when I use column printing, I
only have one column defined in my report - the column printing takes care
of printing it on the right side of the page. If i use a group footer (and
in my case it's all one group, it's a phone directory), there is only one
per page/column. And if i use page footer, i only get the physical page
number, not the column number. any other ideas?

Marshall Barton said:
You can get the number of a column by using a text boxes
with expressions
Left column: =2 * Page
Right column: =2 * Page - 1

However, the only thing you can make appear right under the
last detail in a group is the group footer section. Unless
you can guarantee that an entire group will fit in a single
column, you may not get a desireable result from using the
group footer.

The Page Footer section is guaranteed to appear at the
bottom of every page (unless you do something to hide it),
so maybe that would be better to use. Since the page footer
section spans the entire width of the page, you will need
one text box in the left side of the section and another on
the right side.
--
Marsh
MVP [MS Access]


Joseph said:
Do you know how, using this method, I can sequentially number the columns
to
appear as pages? That is, I have a 2 column report, and I want, at the top
(or bottom) of each column to include a page number - so the second column
(appearing on the first physical page) would appear as page 2?
 
M

Marshall Barton

Joseph said:
See, but this is what I don't understand - when I use column printing, I
only have one column defined in my report - the column printing takes care
of printing it on the right side of the page. If i use a group footer (and
in my case it's all one group, it's a phone directory), there is only one
per page/column. And if i use page footer, i only get the physical page
number, not the column number. any other ideas?


I'm getting confused by your use of the word "column". What
is "column printing" when you say there is "one column
defined in my report"? What about the page number is
different from the "column number" when there is "one
per page/column"?

Did you try the expressions I posted? If you did, what was
wrong with it?
 
J

Joseph Greenberg

I am using column printing from the page setup menu - my report is defined
as 2 columns (for illustration sake, I am trying to print 2 pages of a phone
directory on 1 8.5x14 piece of landscape (legal) paper. I have .5 inches
between columns and .25 inch margins so I each "page" in the report (and the
available width of the report area) is 6.25".

I have my fields placed on the report, with appropriate grouping. That is, I
have ONE LastName field placed on the report. The column printing (down
first) takes care of creating the first column of names, and then goes back
up to the top on the right hand column.

So....

There is only 1 "side" to my report - it's not like I've manally created
columns in the report. I have my report laid out, and I expect Access to
repeat it in columns - which it does. So if I were to have say 3 columns
defined on the page setup screen instead of 2, I'd want the bottom of the
first column to say "Page 1", the bottom of the second column to say "Page
2", and the bottom of the 3rd column say "Page 3" - even though they all
appear on the same physical piece of paper. The the first column on the
second physical piece of paper would say "Page 4", etc. If I place a [Page]
in the group footer, I get the physical page number, same as if I placed it
in the page footer.

The thing to keep in mind is that there is not real "grouping" at a high
level - all the last names are part of the same group. The other grouping
variables I have defined are to take care of children records and ordering,
and that sort of thing.

Does this now make any more sense?
 
M

Marshall Barton

Joseph said:
I am using column printing from the page setup menu - my report is defined
as 2 columns (for illustration sake, I am trying to print 2 pages of a phone
directory on 1 8.5x14 piece of landscape (legal) paper. I have .5 inches
between columns and .25 inch margins so I each "page" in the report (and the
available width of the report area) is 6.25".

I have my fields placed on the report, with appropriate grouping. That is, I
have ONE LastName field placed on the report. The column printing (down
first) takes care of creating the first column of names, and then goes back
up to the top on the right hand column.

So....

There is only 1 "side" to my report - it's not like I've manally created
columns in the report. I have my report laid out, and I expect Access to
repeat it in columns - which it does. So if I were to have say 3 columns
defined on the page setup screen instead of 2, I'd want the bottom of the
first column to say "Page 1", the bottom of the second column to say "Page
2", and the bottom of the 3rd column say "Page 3" - even though they all
appear on the same physical piece of paper. The the first column on the
second physical piece of paper would say "Page 4", etc. If I place a [Page]
in the group footer, I get the physical page number, same as if I placed it
in the page footer.

The thing to keep in mind is that there is not real "grouping" at a high
level - all the last names are part of the same group. The other grouping
variables I have defined are to take care of children records and ordering,
and that sort of thing.

Does this now make any more sense?


Ok, you're using real report columns. I got that part, but
how do you guarantee the each group will fit in a single
column?

I still think you should use the page footer with a text box
positioned so that it appears under a column. Instead of
using just =Page, set each text box expression to reflect
the number of columns:

=3 * (Page - 1) + 1
=3 * (Page - 1) + 2
=3 * (Page - 1) + 3
 
J

Joseph Greenberg

I don't worry about if each group fits on a single page - there is only one
"group" - the list of names. I have a group header that breaks to a new page
at each letter of the alphabet, but realistically it is all just one list of
names.

So I have set up as one "column" of fields/data, and Access, using the
column printing feature, makes it into 2. If I put something in the page
footer, it only shows up under the first (left hand) column - my problem is
getting something under the right hand column also.

Marshall Barton said:
Joseph said:
I am using column printing from the page setup menu - my report is defined
as 2 columns (for illustration sake, I am trying to print 2 pages of a
phone
directory on 1 8.5x14 piece of landscape (legal) paper. I have .5 inches
between columns and .25 inch margins so I each "page" in the report (and
the
available width of the report area) is 6.25".

I have my fields placed on the report, with appropriate grouping. That is,
I
have ONE LastName field placed on the report. The column printing (down
first) takes care of creating the first column of names, and then goes
back
up to the top on the right hand column.

So....

There is only 1 "side" to my report - it's not like I've manally created
columns in the report. I have my report laid out, and I expect Access to
repeat it in columns - which it does. So if I were to have say 3 columns
defined on the page setup screen instead of 2, I'd want the bottom of the
first column to say "Page 1", the bottom of the second column to say "Page
2", and the bottom of the 3rd column say "Page 3" - even though they all
appear on the same physical piece of paper. The the first column on the
second physical piece of paper would say "Page 4", etc. If I place a
[Page]
in the group footer, I get the physical page number, same as if I placed
it
in the page footer.

The thing to keep in mind is that there is not real "grouping" at a high
level - all the last names are part of the same group. The other grouping
variables I have defined are to take care of children records and
ordering,
and that sort of thing.

Does this now make any more sense?


Ok, you're using real report columns. I got that part, but
how do you guarantee the each group will fit in a single
column?

I still think you should use the page footer with a text box
positioned so that it appears under a column. Instead of
using just =Page, set each text box expression to reflect
the number of columns:

=3 * (Page - 1) + 1
=3 * (Page - 1) + 2
=3 * (Page - 1) + 3
 
M

Marshall Barton

I have been trying to explain that the page footer (not
group footer) needs a text box with my suggested expression
**for each column**.

If you have two columns, then the page footer needs two text
boxes, one on the left and another on the right.

Similarly for three columns using three text boxes.
--
Marsh
MVP [MS Access]


Joseph said:
I don't worry about if each group fits on a single page - there is only one
"group" - the list of names. I have a group header that breaks to a new page
at each letter of the alphabet, but realistically it is all just one list of
names.

So I have set up as one "column" of fields/data, and Access, using the
column printing feature, makes it into 2. If I put something in the page
footer, it only shows up under the first (left hand) column - my problem is
getting something under the right hand column also.

Joseph said:
I am using column printing from the page setup menu - my report is defined
as 2 columns (for illustration sake, I am trying to print 2 pages of a
phone
directory on 1 8.5x14 piece of landscape (legal) paper. I have .5 inches
between columns and .25 inch margins so I each "page" in the report (and
the
available width of the report area) is 6.25".

I have my fields placed on the report, with appropriate grouping. That is,
I
have ONE LastName field placed on the report. The column printing (down
first) takes care of creating the first column of names, and then goes
back
up to the top on the right hand column.

So....

There is only 1 "side" to my report - it's not like I've manally created
columns in the report. I have my report laid out, and I expect Access to
repeat it in columns - which it does. So if I were to have say 3 columns
defined on the page setup screen instead of 2, I'd want the bottom of the
first column to say "Page 1", the bottom of the second column to say "Page
2", and the bottom of the 3rd column say "Page 3" - even though they all
appear on the same physical piece of paper. The the first column on the
second physical piece of paper would say "Page 4", etc. If I place a
[Page]
in the group footer, I get the physical page number, same as if I placed
it
in the page footer.

The thing to keep in mind is that there is not real "grouping" at a high
level - all the last names are part of the same group. The other grouping
variables I have defined are to take care of children records and
ordering,
and that sort of thing.

Does this now make any more sense?


Ok, you're using real report columns. I got that part, but
how do you guarantee the each group will fit in a single
column?

I still think you should use the page footer with a text box
positioned so that it appears under a column. Instead of
using just =Page, set each text box expression to reflect
the number of columns:

=3 * (Page - 1) + 1
=3 * (Page - 1) + 2
=3 * (Page - 1) + 3
 
J

Joseph Greenberg

ok, and what I"ve been trying to explain is that i only have one column
defined in my report. There is ONE last name field. Access, in the
multi-column printing functionality automatically puts the second column on
the right side of the page. I don't "define" a second column. So let's say I
have 500 people in my directory. My detail section has a field called
LastName (and other things but we don't care about that right now). So it
prints each last name down the page. Lets's say it gets 50 on a page. If I
was using standard printing, it would fill up 10 pages, right? But since I'm
using column printing, instead of going to the next page, it actually puts
the 51st name at the top of the first page, but in wahat appears to be a
second column, even though i only have one column width of fields defined in
my report. So the first page will now contain 100 names (50 in both
columns). And of course the report will now be only 5 pages.

So, if I put a page footer in my report, it only prints once at the bottom
of a page. A group footer will print twice (under both columns), but it
still shows the PAGE number - the last page will have two page numbers, both
saying page 5.

What I'm not getting is where do I put the second text box you are referring
to?

Sorry if I'm not making myself clear, and for your persistence.

Marshall Barton said:
I have been trying to explain that the page footer (not
group footer) needs a text box with my suggested expression
**for each column**.

If you have two columns, then the page footer needs two text
boxes, one on the left and another on the right.

Similarly for three columns using three text boxes.
--
Marsh
MVP [MS Access]


Joseph said:
I don't worry about if each group fits on a single page - there is only
one
"group" - the list of names. I have a group header that breaks to a new
page
at each letter of the alphabet, but realistically it is all just one list
of
names.

So I have set up as one "column" of fields/data, and Access, using the
column printing feature, makes it into 2. If I put something in the page
footer, it only shows up under the first (left hand) column - my problem
is
getting something under the right hand column also.

Joseph Greenberg wrote:

I am using column printing from the page setup menu - my report is
defined
as 2 columns (for illustration sake, I am trying to print 2 pages of a
phone
directory on 1 8.5x14 piece of landscape (legal) paper. I have .5 inches
between columns and .25 inch margins so I each "page" in the report (and
the
available width of the report area) is 6.25".

I have my fields placed on the report, with appropriate grouping. That
is,
I
have ONE LastName field placed on the report. The column printing (down
first) takes care of creating the first column of names, and then goes
back
up to the top on the right hand column.

So....

There is only 1 "side" to my report - it's not like I've manally created
columns in the report. I have my report laid out, and I expect Access to
repeat it in columns - which it does. So if I were to have say 3 columns
defined on the page setup screen instead of 2, I'd want the bottom of
the
first column to say "Page 1", the bottom of the second column to say
"Page
2", and the bottom of the 3rd column say "Page 3" - even though they all
appear on the same physical piece of paper. The the first column on the
second physical piece of paper would say "Page 4", etc. If I place a
[Page]
in the group footer, I get the physical page number, same as if I placed
it
in the page footer.

The thing to keep in mind is that there is not real "grouping" at a high
level - all the last names are part of the same group. The other
grouping
variables I have defined are to take care of children records and
ordering,
and that sort of thing.

Does this now make any more sense?


Ok, you're using real report columns. I got that part, but
how do you guarantee the each group will fit in a single
column?

I still think you should use the page footer with a text box
positioned so that it appears under a column. Instead of
using just =Page, set each text box expression to reflect
the number of columns:

=3 * (Page - 1) + 1
=3 * (Page - 1) + 2
=3 * (Page - 1) + 3
 
M

Marshall Barton

I understand what you are saying, but we still seem to be
talking past each other.

A group footer will not help here, at least not without a
ridiculous amount of fooling around.

Put BOTH text boxes in the Page Footer. The one on the left
side of the footer would use the expression:
=2 * (Page - 1) + 1
The text box on the right side of the Page Footer:
=2 * (Page - 1) + 2

I think at least part of your confusion might be because you
have the File - Page Setup - Columns - Same As Detail box
checked so your page footer is the same width as the detail
section (about half the page width). If that's the case,
make note of the report width, then go into File - Page
Setup - Columns, un check the Same As Detail box and make
sure the Column Width is set to the noted value. Then go
back to the report and drag the report width so the page
footer spans the width of the printed page. Now you can
position the two text boxes as I have been saying.

Note: in a multi column report, you almost always want to un
check the Same As Detail box because the report header,
report footer, page header and page footer sections look
pretty stupid crammed into one column's worth of space.
--
Marsh
MVP [MS Access]


Joseph said:
ok, and what I"ve been trying to explain is that i only have one column
defined in my report. There is ONE last name field. Access, in the
multi-column printing functionality automatically puts the second column on
the right side of the page. I don't "define" a second column. So let's say I
have 500 people in my directory. My detail section has a field called
LastName (and other things but we don't care about that right now). So it
prints each last name down the page. Lets's say it gets 50 on a page. If I
was using standard printing, it would fill up 10 pages, right? But since I'm
using column printing, instead of going to the next page, it actually puts
the 51st name at the top of the first page, but in wahat appears to be a
second column, even though i only have one column width of fields defined in
my report. So the first page will now contain 100 names (50 in both
columns). And of course the report will now be only 5 pages.

So, if I put a page footer in my report, it only prints once at the bottom
of a page. A group footer will print twice (under both columns), but it
still shows the PAGE number - the last page will have two page numbers, both
saying page 5.

What I'm not getting is where do I put the second text box you are referring
to?
.

I have been trying to explain that the page footer (not
group footer) needs a text box with my suggested expression
**for each column**.

If you have two columns, then the page footer needs two text
boxes, one on the left and another on the right.

Similarly for three columns using three text boxes.


Joseph said:
I don't worry about if each group fits on a single page - there is only
one
"group" - the list of names. I have a group header that breaks to a new
page
at each letter of the alphabet, but realistically it is all just one list
of
names.

So I have set up as one "column" of fields/data, and Access, using the
column printing feature, makes it into 2. If I put something in the page
footer, it only shows up under the first (left hand) column - my problem
is
getting something under the right hand column also.

Joseph Greenberg wrote:

I am using column printing from the page setup menu - my report is
defined
as 2 columns (for illustration sake, I am trying to print 2 pages of a
phone
directory on 1 8.5x14 piece of landscape (legal) paper. I have .5 inches
between columns and .25 inch margins so I each "page" in the report (and
the
available width of the report area) is 6.25".

I have my fields placed on the report, with appropriate grouping. That
is,
I
have ONE LastName field placed on the report. The column printing (down
first) takes care of creating the first column of names, and then goes
back
up to the top on the right hand column.

So....

There is only 1 "side" to my report - it's not like I've manally created
columns in the report. I have my report laid out, and I expect Access to
repeat it in columns - which it does. So if I were to have say 3 columns
defined on the page setup screen instead of 2, I'd want the bottom of
the
first column to say "Page 1", the bottom of the second column to say
"Page
2", and the bottom of the 3rd column say "Page 3" - even though they all
appear on the same physical piece of paper. The the first column on the
second physical piece of paper would say "Page 4", etc. If I place a
[Page]
in the group footer, I get the physical page number, same as if I placed
it
in the page footer.

The thing to keep in mind is that there is not real "grouping" at a high
level - all the last names are part of the same group. The other
grouping
variables I have defined are to take care of children records and
ordering,
and that sort of thing.

Does this now make any more sense?


Ok, you're using real report columns. I got that part, but
how do you guarantee the each group will fit in a single
column?

I still think you should use the page footer with a text box
positioned so that it appears under a column. Instead of
using just =Page, set each text box expression to reflect
the number of columns:

=3 * (Page - 1) + 1
=3 * (Page - 1) + 2
=3 * (Page - 1) + 3
 

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