以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  关于EXCEL分组报表的总页数  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=7655)

--  作者:yankunhao
--  发布时间:2010/7/21 15:17:00
--  关于EXCEL分组报表的总页数
在设计EXCEL报表时,如果这个报表有分组且打印时一次性多个分组一起打印时,请问如何统计每个分组所用的总页数?因为现在能得出的总页数是所有分组的打印页数,我想设一个能显示每个分组的第几页和共多少页。
--  作者:狐狸爸爸
--  发布时间:2010/7/21 15:30:00
--  

思路,用下面这些报表事件来统计:

 

BeforeBuild:     生成某个报表之前执行
AfterBuild:      生成某个报表之后执行
BuildDetail:     生成某个细节区之前执行
BuildPageHeader: 生成页某个页首之前执行
BuildPageFooter: 生成某个页尾之前执行
BuildGroupHeader:生成某个分组头之前执行
BuildGroupFooter:生成某个分组尾之前执行


--  作者:yankunhao
--  发布时间:2010/7/21 15:48:00
--  

也想过了,也试过了,但不成功。


--  作者:狐狸爸爸
--  发布时间:2010/7/21 16:06:00
--  

定义两个Public变量保存页数和当前分组名,在BuildPageHeader事件将页数变量加1,在BuildGroupHeader事件中判断新的分组名和原来的分组名是否相同,不同的话将页数变量清0,同时更新分组名变量

 

大概就是这样,过程并不复杂。


--  作者:yankunhao
--  发布时间:2010/7/21 17:18:00
--  
那如何用变量保存当前分组名呢?
--  作者:狐狸爸爸
--  发布时间:2010/7/21 17:25:00
--  

在BuildGroupHeader将分组名保存在变量中。


--  作者:yankunhao
--  发布时间:2010/7/22 7:41:00
--  

请问如何在每分组页都能显示总页数呢?如第1页共3页这样格式的?

 

 


--  作者:狐狸爸爸
--  发布时间:2010/7/22 8:05:00
--  

还是用标记吧,不要用public变量,其实这些事件就是配合标记使用的,这一章的名字就是“标记与事件”

不过共几页可能显示不出来的,只能知道第几页。

[此贴子已经被作者于2010-7-22 8:06:25编辑过]

--  作者:yankunhao
--  发布时间:2010/7/22 8:54:00
--  

啊,那如何办啊,我们要求多分组打印时能在分页面显示第几页共几页的格式。


--  作者:狐狸爸爸
--  发布时间:2010/7/22 9:00:00
--  

总的第几页共几页,通过设置模板的页眉页脚可以实现,显示每个分组的第几页共几页,是没有办法。