access|打印|显示 问题:
连续或者单个窗体,如何打印当前显示的记录?当前窗体还有对应的子窗体,也要一起打印出来
我在一个窗体里有一个单号,大子窗体里有几组数据,我的报表是一组数据一页,请问如何实现按一下打印,能够只打印当前单号的数据报表?
回答:
这个问题太简单,我就不另外做说明了,请去看罗斯文示例数据库的“订单”窗体上“打印发货单”按钮的单击事件的代码
http://access911.net/down/eg/northwind2003.rar
http://access911.net/down/eg/northwind97.rar
Sub 打印发货单_Click()
' 这段代码由“命令按钮向导”创建。
On Error GoTo Err_PrintInvoice_Click
Dim strDocName As String
strDocName = "发货单"
' 打印“发货单”报表,使用“发货单筛选”查询打印当前订单的发货单。
DoCmd.OpenReport strDocName, acViewNormal, "发货单筛选"
Exit_PrintInvoice_Click:
Exit Sub
Err_PrintInvoice_Click:
' 如果用户取消操作,不显示错误消息。
Const conErrDoCmdCancelled = 2501
If (Err = conErrDoCmdCancelled) Then
Resume Exit_PrintInvoice_Click
Else
MsgBox Err.Description
Resume Exit_PrintInvoice_Click
End If
End Sub
这里的DoCmd.OpenReport strDocName, acViewNormal, "发货单筛选" 的"发货单筛选"参数是一个查询的名称,该查询代码如下:
SELECT 发货单.*
FROM 发货单
WHERE (((发货单.订单ID)=Forms!订单!订单ID));
请去参考一下 OpenReport 的语法,在 ACCESS 帮助里面有。