событие Report.Page (Access)

Событие Page возникает после того, как Microsoft Access форматирует страницу отчета для печати, но до печати страницы. Используйте это событие для рисования границы вокруг страницы или добавления других графических элементов на страницу.

Синтаксис

expression. Страницы

Выражение Переменная, представляющая объект Report .

Возвращаемое значение

Отсутствует

Примечания

Чтобы выполнить макрос или процедуру события при возникновении этого события, задайте для свойства OnPage имя макроса или [Процедура события].

Это событие возникает после всех событий форматирования для отчета и после всех событий печати для страницы, но до фактической печати страницы.

Обычно для создания нужной графики для страницы обычно используются методы Line, Circle или PSet.

Событие NoData возникает перед первым событием Page для отчета.

Пример

В следующем примере показано, как нарисовать прямоугольник вокруг страницы отчета с помощью метода Line . Свойства ScaleWidth и ScaleHeight по умолчанию возвращают внутреннюю ширину и высоту отчета.

Private Sub Report_Page() 
    Me.Line(0, 0)-(Me.ScaleWidth, Me.ScaleHeight), , B 
End Sub

В следующем примере показано, как использовать событие Page для добавления водяного знака в отчет перед его печатью.

Private Sub Report_Page()
    Dim strWatermarkText As String
    Dim sizeHor As Single
    Dim sizeVer As Single

#If RUN_PAGE_EVENT = True Then
    With Me
        '// Print page border
        Me.Line (0, 0)-(.ScaleWidth - 1, .ScaleHeight - 1), vbBlack, B
    
        '// Print watermark
        strWatermarkText = "Confidential"
        
        .ScaleMode = 3
        .FontName = "Segoe UI"
        .FontSize = 48
        .ForeColor = RGB(255, 0, 0)

        '// Calculate text metrics
        sizeHor = .TextWidth(strWatermarkText)
        sizeVer = .TextHeight(strWatermarkText)
        
        '// Set the print location
        .CurrentX = (.ScaleWidth / 2) - (sizeHor / 2)
        .CurrentY = (.ScaleHeight / 2) - (sizeVer / 2)
    
        '// Print the watermark
        .Print strWatermarkText
    End With
#End If

End Sub

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.