如何用记录源数据的子集打开MS-Access报告?

问题描述:

我有一个查询生成一个记录集,用于我使用MS Access报表创建的计算机生成的发票。该记录看起来是这样的(但有数百发票):如何用记录源数据的子集打开MS-Access报告?

ControlNumber|ShippingAddress|InventoryDescription|... 
17-001  123 Fake St  Description A 
17-002  145 No addr  Description B 
17-003  23456 new st Description C 

我已在报表中设置这样就产生了我不同的页面上完全分开填写发票系统中的每个发票。尽管如此,我不想通过数百个寻找我想要打印的具体人物。

我有另一个MS Access窗体,操作员用它来选择打印这些发票的下拉组合框和一个按钮。在我使用下拉菜单选择要打印哪一个(比如17-003)后,我想点击按钮并弹出只有那一张发票的报告。如何告诉报告仅显示该记录集的子集?

如果需要,我可以使用现有的Access函数或编写VBA代码,但如果可能的话,我宁愿不默认使用VBA。用于报告数据集的动态过滤

+0

如果您不想使用VBA,请使用filter属性来引用窗体上的组合框值。 – geeFlo

+0

并确保将“FilterOnLoad”设置为“是”。 – geeFlo

+0

如何设置过滤器属性?我似乎无法完成这项工作。 – SandPiper

选项:

  1. 动态参数化查询作为报告记录源,这可以是一个弹出输入或参考上形式的控制 - 我从不使用动态参数化查询

  2. 在设计视图中手动打开报告并设置Filter属性,然后切换报告以打印预览,然后打印

  3. 代码(宏或VBA)在报告通过引用打开时应用过滤器窗体上的控件,例如VBA:DoCmd.OpenReport "report name", , , "ControlNumber='" & Me.cbxCN & "'"

+0

宏最终为我工作。谢谢。 – SandPiper