访问:每组的页码

时间:2011-05-05 18:58:58

标签: ms-access vba ms-access-2007

我想在每个组的页脚中获取“Page n of n Pages”。 我可以获取每个组的页码,但总页数不依赖于每个组的记录数,因为根据一个记录的详细信息,可能会跨越多个页面。
这甚至可能吗?

3 个答案:

答案 0 :(得分:1)

找到了this page,但是您需要将原始[Page]声明留在某处隐藏,否则它无法正常工作。 ="Page " & [Page] & " of " & [Pages]

答案 1 :(得分:0)

我不确定这是否可行。可能您可以使用组的OnFormat事件中的代码来计算组中的页数,但是在您到达组的末尾之前它不会准确。

我真的不认为有解决方案。

对于它的价值,这不是我需要做的事情。一种解决方法是使用常规的“页面[页面]”表达式,多次打印报告,每个组一次。如果你只有十几个团体,这将不是一个糟糕的kludge。另一方面,如果你有数百个团体,而不是那么多!

答案 2 :(得分:0)

Option Compare Database
Dim x As Integer

''''''''''''''' must be written in the header of your group 
Private Sub GroupHeader1_Format(Cancel As Integer, FormatCount As Integer)
Page = 1    
End Sub
''''''''''''''''''''''''''''''''''''''''''''''''''

''''''''''''''''''' paste this code in your page footer 
Private Sub PageFooterSection_Format(Cancel As Integer, FormatCount As Integer)

dalel_var.Value = Me!dalel_no
   ' to get the total number of rows in the table based on a specific "id" which we group data with it
 x = DCount("'[Me!dalel_no]'", "betakat_istath_alaam", "[dalel_no] = " & dalel_var.Value & "")

If x Mod 15 = 0 Then
x = ((x / 15) + 0.5) - 1 '' arrange your report details out of 15 rows per page
Else
x = ((x / 15) + 0.5)
End If
divide_txt = x            '''' divide_txt is a textbox in the report
End Sub
''''''''''''''''''''''''''