Нижний колонтитул принудительного отчета должен находиться внизу страницы - PullRequest
3 голосов
/ 20 декабря 2011

В Microsoft Access 2007,

Есть ли способ отобразить раздел «Нижний колонтитул отчета» внизу последней страницы? Прямо сейчас мой нижний колонтитул отчета всегда следует за моим подробным разделом, поэтому он заканчивается где угодно.

Я бы хотел как можно больше избегать использования VBA.

Ответы [ 2 ]

3 голосов
/ 20 декабря 2011

Должен ли это быть нижний колонтитул отчета или требуется, чтобы текст отображался внизу страницы на последней странице отчета?Если это так, то это может быть сделано с очень небольшим VBA:

Private Sub PageFooterSection_Format(Cancel As Integer, FormatCount As Integer)
If Page = Pages Then
   Me.[TextBoxName].Visible = True
Else
   Me.[TextBoxName].Visible = False
End If
End Sub

Идея состоит в том, чтобы поместить текстовое поле в нижний колонтитул страницы и сделать его видимым только на последней странице.

Кроме того, вы можете прочитать http://support.microsoft.com/kb/208979/en-us

2 голосов
/ 03 февраля 2012

Я нашел лучший способ здесь - у вас может быть большой нижний колонтитул отчета, который не занимает половину пространства на вашей странице для раздела Подробности

В основном вам нужно добавитьследующий код к вашему отчету (хотя вы можете поместить его в общий модуль):

Sub SetGrpFtrLoc(Rpt As Report, GrpFtrLoc As Double)
    GrpFtrLoc = GrpFtrLoc * 1440        'Convert from inches to twips.
    If Rpt.Top < GrpFtrLoc Then         'Not at location yet, so
        Rpt.MoveLayout = True           'move to next print location.
        Rpt.NextRecord = False          'Do not go to next record.
        Rpt.PrintSection = False        'Do not print the section.
    End If                              'Until the required offset is reached
End Sub

Затем вы можете поместить следующее в процедуру обработки события для формата нижнего колонтитула отчета.

Private Sub ReportFooter_Format(Cancel As Integer, FormatCount As Integer)
    Call SetGrpFtrLoc(Me.Report, 8)     'Display report footer at least
                                        '8 inches from the top of the page
End Sub

(пример MS сделал SetGrpFtrLoc функцией и вызвал ее непосредственно в событии On Format нижнего колонтитула отчета, в моем случае мне нужно было сделать другие вещи в событии On Format, поэтому я превратил его в Sub)

...