cloudy 发表于:2009-03-12 11:30:49
麻烦帮我看一下怎样可以在窗体里点"主帐窗体"里面的打印图标可以只打印出一条窗体输入记录的内容,而不是全部的呀?
也就是说我只想打印当前窗体记录的内容,我现在输了三条记录,点打印打出来的是全部的.
点击下载此附件
打印子窗体所有记录:
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));
直接把上例的查询里的SQL语句放到打开报表的条件中,可实现只打当前激活的那一条记录(因为这里只有那给激活的才会赋值给 Me.订单ID.代码:
DoCmd.OpenReport strDocName, acViewNormal, "SELECT 发货单.* FROM 发货单 WHERE (((发货单.订单ID)=Forms!订单!订单ID));"
总记录:1篇 页次:1/1 9 1 :