I'm trying to use the following function to draw a border around my report:
Public Function PageBorder(ByVal strReportName As String)
Dim Rpt As Report, lngColor As Long
Dim sngTop As Single, sngLeft As Single
Dim sngwidth As Single, sngheight As Single
On Error GoTo PageBorder_Err
'DRAW DOUBLE LINED BORDER
Set Rpt = Reports(strReportName)
'Set scale to pixels
Rpt.ScaleMode = 3
'Top inside edge
sngTop = Rpt.ScaleTop
'Left inside edge
sngLeft = Rpt.ScaleLeft
'Width inside edge
sngwidth = Rpt.ScaleWidth
'Height inside edge
sngheight = Rpt.ScaleHeight
'color value
lngColor = RGB(0, 0, 255)
'Draw page Border
Rpt.Line (sngTop, sngLeft)-(sngwidth, sngheight), lngColor, B
sngTop = Rpt.ScaleTop + 10
sngLeft = Rpt.ScaleLeft + 10
sngwidth = Rpt.ScaleWidth - 10
sngheight = Rpt.ScaleHeight - 10
Rpt.Line (sngTop, sngLeft)-(sngwidth, sngheight), lngColor, B
PageBorder_Exit:
Exit Function
PageBorder_Err:
MsgBox Err.Description, , "PageBorder"
Resume PageBorder_Exit
End Function
(source: http://msaccesstips.com/2007/08/reports-page-border/)
I added pageborder "myreport"
to my report_open, but it returns开发者_开发问答 the following error:
error 2455: invalid reference to the scalemode property.
anyone have any clue about this ?
Try the On Page event.
Access help: "You can set the ScaleMode property by using a macro or a Visual Basic event procedure specified by a section's OnPrint property setting."
精彩评论