Foxtable(狐表)用户栏目专家坐堂 → [求助]请问狐表可以 自动排版,打印 EXCEL报表么?


  共有4273人关注过本帖树形打印复制链接

主题:[求助]请问狐表可以 自动排版,打印 EXCEL报表么?

帅哥哟,离线,有人找我吗?
zhuzhi
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:476 积分:4039 威望:0 精华:0 注册:2011/11/2 8:55:00
  发帖心情 Post By:2014/3/31 18:00:00 [只看该作者]

呃,不好意思,有一个新的问题……

我用您的方法 做了,生成的报表也确实是分部门打印了,但是有一个37人的部门,却打到另外一个部门的那一页上去了。

我核对了,它的确是分了部门,然而却没有单独分页。

请问如何处置呢?

我是按照每排3个人,每页打3排来打的

十分感谢!

 回到顶部
帅哥哟,离线,有人找我吗?
zhuzhi
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:476 积分:4039 威望:0 精华:0 注册:2011/11/2 8:55:00
  发帖心情 Post By:2014/3/31 18:22:00 [只看该作者]

还有1个问题想请教,分页之后怎么形成每个部门对应的页码呢?
现在显示的是总页码,但如果我想要双面打印的话,总页码就看不出来这个部门已经打完了。

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/3/31 20:29:00 [只看该作者]

以下是引用zhuzhi在2014-3-31 18:00:00的发言:
呃,不好意思,有一个新的问题……

我用您的方法 做了,生成的报表也确实是分部门打印了,但是有一个37人的部门,却打到另外一个部门的那一页上去了。

我核对了,它的确是分了部门,然而却没有单独分页。

请问如何处置呢?

我是按照每排3个人,每页打3排来打的

十分感谢!

 

你有设置<GroupFooter, 表, 部门, 1> 么?设置就不应该这样的。


 回到顶部
帅哥哟,离线,有人找我吗?
zhuzhi
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:476 积分:4039 威望:0 精华:0 注册:2011/11/2 8:55:00
  发帖心情 Post By:2014/4/1 9:42:00 [只看该作者]

有设置啊,您看,是这个样子的
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:审查模板(批量a4).xls


[此贴子已经被作者于2014-4-1 9:43:02编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2014/4/1 9:43:00 [只看该作者]

狐表例子也发上来,才好测试修改

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/4/1 9:54:00 [只看该作者]

 看了一下,没办法的。你用的是标签打印,一行打印3个数据。

 

 但是标签无法得知其部门是否相同的。也就是如果部门人数如果不是3的倍数,就会出现错乱。

 

 或者你可以这样去变通:

 

1、在生成报表之前,处理一下表格;

 

2、如果部门人数不是3的倍数,就自动增加1行/2行;

 

3、生成报表;

 

4、删除那些添加的空行。


 回到顶部
帅哥哟,离线,有人找我吗?
zhuzhi
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:一尾狐 帖子:476 积分:4039 威望:0 精华:0 注册:2011/11/2 8:55:00
  发帖心情 Post By:2014/4/1 11:27:00 [只看该作者]

好像很难,这些要用代码解决吧?该怎么做呢?

那么如果换成这样解决 

我有1张表B,上面有各种部门名称 
我的基础表职工总库,想要根据表B的部门名称,依次生成报表。

这个代码应该怎么来写呢?您让我看的里面有:

Dim Book As New XLS.Book(ProjectPath & "Attachments\订单.xls"'打开模板
Dim 
fl As String = ProjectPath & "Reports\订单.xls"
Dim 
Sheet As XLS.Sheet = Book.Sheets(0)
Sheet
(3,9).Value = "<日期 = # " & Date.Today & "#>"  '写入打印条件
Book.Build() 
'生成报表
Book.Save(fl) 

Dim 
Proc As New Process 
Proc.File = fl
Proc.Start()

但是怎么从自己设置打印条件,变成自动更换打印条件呢?

十分感谢!

这是我的项目:
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:excel报表.table

[此贴子已经被作者于2014-4-1 11:27:58编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2014/4/1 13:18:00 [只看该作者]

 16楼说错了,分组打印以后。设一下标签就行了。<职工总库,@3,9>

 

 按条件打印,代码如下

 

Dim ls As List(Of String) = DataTables("表B").GetValues("第一列", "第一列 is not null")
Dim filter As String = "1=2"
For Each s As String In ls
    filter += " or 工组 = '" & s & "'"
Next
filter = "<" & filter & ">"
Dim Book As New XLS.Book(ProjectPath & "xxx.xls") '打开模板
Dim fl As String = ProjectPath & "Reports\xxx.xls"
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Sheet(2,19).Value = filter  '写入打印条件
Book.Build() '生成报表
Book.Save(fl)
Dim Proc As New Process
Proc.File = fl
Proc.Start()


 回到顶部
总数 18 上一页 1 2