Solved

Access 2003 - report footer on first page only

Posted on 2012-03-26
7
621 Views
Last Modified: 2012-03-26
I am using this code to show the footer only on the first page of a report. It is not working. It show none. I am putting in the on format and onprint?

Private Sub PageFooterSection_Format(Cancel As Integer, FormatCount As Integer)
If Me.Page = 1 Then
 
  Me.PageFooterSection.Visible = True
    Else
     Me.PageFooterSection.Visible = False
   End If
end sub


any ideas?
0
Comment
Question by:Pdeters
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
7 Comments
 
LVL 31

Expert Comment

by:Helen_Feddema
ID: 37766224
This works for a simple footer (just a text box), though of course you could use the same technique for several textboxes:

This is the control source of the textbox:  =IIf([Page]=1,"Page " & [Page] & " of " & [Pages],"")

Make sure that you have the Page Footer set for All Pages in the Report property sheet.
0
 
LVL 77

Expert Comment

by:peter57r
ID: 37766231
Put the code in the page header or Detail event - by the tme you get to the page footer it's already too late.
0
 
LVL 30

Expert Comment

by:hnasr
ID: 37766241
Try this:

If Page = 1 Then
      Me.PageFooterSection.Visible = True
Else
     Me.PageFooterSection.Visible = False
End If
0
Salesforce Made Easy to Use

On-screen guidance at the moment of need enables you & your employees to focus on the core, you can now boost your adoption rates swiftly and simply with one easy tool.

 
LVL 74

Expert Comment

by:Jeffrey Coachman
ID: 37766380
Or you can just hide the "Controls" in the footer, with basically the same event:

Private Sub PageFooterSection_Format(Cancel As Integer, FormatCount As Integer)
If Me.Page = 1 Then
    Me.txt1.Visible = True
    Me.txt2.Visible = True
    Me.lbl45.visible=True
ElseIf Me.Page > 1 Then
    Me.txt1.Visible = False
    Me.txt2.Visible = False
    Me.lbl45.Visible=False
End If
End sub

Note:
If you have a lot of control in the page footer, you can give them all the same "Tag" (ex. "PgFtr") property and loop through them with something like this:

Private Sub PageFooterSection_Format(Cancel As Integer, FormatCount As Integer)
Dim ctl as control
If me.Page=1 then
    For each ctl in me.controls '(or narrow it to the page footer)
        If ctl.Tag="PgFtr" then
            ctl.visible=True
        else
            ctl.visible=False
        end if
    next ctl
end if


JeffCoachman
0
 
LVL 30

Expert Comment

by:hnasr
ID: 37766637
Where to put code?
In format event of the object. Event is fired before formatting the section.
0
 
LVL 30

Expert Comment

by:hnasr
ID: 37766661
If you click on Format event in the event tab of PageFooterSection properties sheet , watch the status bar displaying, "Macro or function that runs before section is formatted"
0
 
LVL 74

Accepted Solution

by:
Jeffrey Coachman earned 500 total points
ID: 37767904
Besides turning off the individual controls in the Page footer, here is what also worked for me:

Set the Section Visible property to Yes in the property sheet
Then do this on the "Page" event
    Me.PageFooterSection.Visible = False

The "Page" event fires each time you *change* the page.
So since opening the report for the first time (and displaying Page 1) is not technically "Changing" the page, this event does not fire.
Hence it only fires *after* page 1.
So doing this may also give the OP what they are seeking...

JeffCoachman
0

Featured Post

Free Tool: ZipGrep

ZipGrep is a utility that can list and search zip (.war, .ear, .jar, etc) archives for text patterns, without the need to extract the archive's contents.

One of a set of tools we're offering as a way to say thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Technology opened people to different means of presenting information, but PowerPoint remains to be above competition. Know why PPT still works today.
Describes a method of obtaining an object variable to an already running instance of Microsoft Access so that it can be controlled via automation.
The viewer will learn how to create a normally distributed random variable in Excel, use a normal distribution to simulate the return on an investment over a period of years, Create a Monte Carlo simulation using a normal random variable, and calcul…
The viewer will learn how to create two correlated normally distributed random variables in Excel, use a normal distribution to simulate the return on different levels of investment in each of the two funds over a period of ten years, and, create a …

732 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question