我在Access 2013中有一个报告,它将查询中的记录分组,并将每个组打印到一个单独的页面。在VBA中是否有办法找出每个记录将打印在哪个页面上?
编辑 - 从评论中添加了这些细节:
报告将是1-5页。我们打算在每个页面上打印的参考中包含页码,例如“CN001-x”,其中x将是页码。然后,我们将该值存储在数据库的表中。
报告对数据进行分组,并在每个组之后创建一个新页面,每个页面都有可变数量的记录。
答案 0 :(得分:0)
通过使用Count()的复杂公式,您可以计算记录将登陆的页面。例如,如果第一页上有20条记录,那么您就会知道第21条记录将出现在第二页上。由于我看不到你的报告或代码,所以不得不解释它。
创建一个计算报告中记录的公式,然后在比较中使用该公式,以查看该数字是否在1-20范围内。如果是这样,请为其指定值1.然后,只需将该字段与您需要的字段的其他部分连接起来,就可以了。只需按照以下内容执行您认为需要的迭代次数。如果你知道你的页数永远不会超过7,那么我会停在那里。
IF Count(Field1) <= 20 THEN
1
ELSE IF Count(Field1) > 20 AND Count(Field1) <=40 THEN
2
Else 3
End IF