Public Sub PrintGZLTJ(ByVal strSql As String, ByVal dtmBegin As Date, dtmStop As Date)
On Error Resume Next
Dim rsTemp As ADODB.Recordset
Dim i As Integer
Dim lngTotal As Long
Dim intPage As Integer
Dim sngCurrY As Single
Dim intCurrLine As Integer
Dim sngTitleTop As Single
Dim sngHospitalTop As Single
Dim sngPersonTop As Single
Dim sngTextLeft As Single
Dim sngHeaderTop As Single
Dim sngTextTop As Single
Dim sngTextBottom As Single
Dim sngPageNumberTop As Single
Set rsTemp = New ADODB.Recordset
rsTemp.Open strSql, GCon, adOpenStatic, adLockOptimistic
If rsTemp.EOF Then
MsgBox "没有需要打印的内容,请重新设置时间范围!", vbInformation, "提示"
GoTo ExitLab
End If
intPage = 1 '从第一页开始
'打印第一页的标题
GoSub PrintTitle
rsTemp.MoveFirst
With Printer
'打印报表正文
'循环打印所有记录
intCurrLine = 1
For i = 1 To rsTemp.RecordCount
.FontSize = 9
.FontBold = False
'计算纵坐标
sngCurrY = sngTextTop + (intCurrLine - 1) * .TextHeight("高度") * 1.5
If sngCurrY > sngTextBottom Then '该分页
Printer.NewPage
intPage = intPage + 1
GoSub PrintTitle