技術(shù) 點
- 技術(shù)
- 點
- V幣
- 點
- 積分
- 144573
|
8金錢
我使用了代碼來動態(tài)設(shè)置報表的紙張及邊距,但出現(xiàn)一個奇怪現(xiàn)象
打開報表時, 代碼是執(zhí)行了,但沒有任何效果,可是手工打開頁面設(shè)置, 發(fā)現(xiàn)里面的設(shè)置內(nèi)容的確按代碼已經(jīng)修改了,如果這時按一下確定, 報表紙張設(shè)置才有效果
在Open事件中加了如下代碼:
Dim rs As Recordset
Set rs = CodeDb.OpenRecordset("Select * From tblrptPageSize ", dbOpenDynaset)
With Me.Printer
.PaperSize = Nz(rs!rptPageSize, 9)
.TopMargin = Round(Nz(rs!rptTop, 0) * 56.7, 2)
.BottomMargin = Round(Nz(rs!rptBottom, 0) * 56.7, 2)
.LeftMargin = Round(Nz(rs!rptLeft, 0) * 56.7, 2)
.RightMargin = Round(Nz(rs!rptRight, 0) * 56.7, 2)
.Orientation = 2
.Copies = 1
End With |
最佳答案
查看完整內(nèi)容
應(yīng)該可以,需要用集合的方式打開報表才能改變紙張大小
Public clnClient As New Collection
Public Sub GetPage(ReportName As String) '讀取頁邊距
Dim Rs As New ADODB.Recordset
Dim Conn As New ADODB.Connection
Set Conn = CurrentProject.Connection
Dim SQL As String
Dim Rpt As Report
SQL = "SELECT * FROM Dybbcs where bbmc='" & ReportName & "'"
Set Rpt = New Report_Test
Rs.Open SQL, Conn, a ...
|