我有一个数据输入表格,其中包含三种表格
1-主要表格(客户) 2-子表格(订单) 3-子表格(订单详情)
订单详细信息子表单链接到订单子表单,订单子表单也链接到客户表单。我通过向导创建了一个包含客户记录集的报表,然后使用"从现有表"将订单记录拖到报表中。最后,我为订单详细信息创建了一个子报告。 从数据输入表单中,当我单击订单子表单记录时,订单详细信息的相应字段仅显示,并且符合我的需要。 好吧,我创建了一个命令按钮来打印选定的记录。我建造了。命令按钮具有以下代码
Private Sub cmdPrint_Click()
Dim strWhere As String
If Me.Dirty Then 'Save any edits.
Me.Dirty = False
End If
If Me.NewRecord Then 'Check there is a record to print
MsgBox "Please select a record"
Else
strWhere = "[CustomerID] = " & Me.[CustomerID]
DoCmd.OpenReport "rptcustomers", acViewPreview, , strWhere
End If
End Sub
但是,当我在数据输入表单中选择订单的第二行(参考客户的第二个订单)时,报告会显示该客户的所有订单及其详细信息。我只想打印所选订单及其详细信息。请帮忙。 为了向读者说清楚,我解释了我一步一步做了些什么。
答案 0 :(得分:0)
您正按客户(strWhere = "[CustomerID] = " & Me.[CustomerID]
)
也许你应该按顺序过滤:
strWhere = "[OrderID] = " & Me.[OrderID]
答案 1 :(得分:0)
创建新表 然后在子表单中取一个命令按钮并写下代码
docmd.runsql "Insert into Table_Name(Fields)values(subform fields name)
然后从您创建的新表创建报告
报告结束
docmd.runsql delete * from New_Report_Table
。
完成