我有一个包含多个子报告的报告,每个子报告之间都有分页符。我只想根据在主窗体上输入的文本控件之一(根据从组合框的选择自动填写)中输入的内容打印指定的页面。例如,当ClientName
控件显示123,
时,我只希望打印报告的页面1
和4
。
我尝试使用DoCmd.PrintOut acPages
,但这不是我想要的解决方案,因为它可以打印出页面1-4
,而不仅仅是打印1
和4
。
我认为acPrintRange
可能是另一种尝试,但是我对Access还是很陌生,我不太确定如何使用这段代码。我认为,为了按照我希望的方式使用它,我必须将其与If...Then...Else
结合使用。
不胜感激的一个例子将是如何完成此示例或代码看起来像模板!
为清楚起见,我正在尝试将此代码编码到命令按钮的OnClick
事件中,以进行几种不同的页面配对。
答案 0 :(得分:1)
对于非连续范围,您必须多次调用DoCmd.PrintOut
,每个范围一次。
例如打印第1和4-5页:
DoCmd.PrintOut PrintRange:=acPages, PageFrom:=1, PageTo:=1
DoCmd.PrintOut PrintRange:=acPages, PageFrom:=4, PageTo:=5
注意:使用上述名称参数有助于使代码不言自明。