Foxtable(狐表)用户栏目专家坐堂 → [求助]生成EXCEL报表时,如何可以根据条件生成多个表头及数据


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

主题:[求助]生成EXCEL报表时,如何可以根据条件生成多个表头及数据

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


加好友 发短信
等级:小狐 帖子:344 积分:3475 威望:0 精华:0 注册:2015/8/16 19:06:00
[求助]生成EXCEL报表时,如何可以根据条件生成多个表头及数据  发帖心情 Post By:2018/7/6 16:57:00 [只看该作者]

如题
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:1.xls


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


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

你excel模板里面设置多少个sheet表格,你生成的时候,就能有多少个表格。

 

没看懂你要实现什么。尽量做个foxtable项目上来说明你需要的功能。


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


加好友 发短信
等级:小狐 帖子:344 积分:3475 威望:0 精华:0 注册:2015/8/16 19:06:00
  发帖心情 Post By:2018/7/6 17:42:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目19.foxdb

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:最终想要得到报表格式.xlsx


[此贴子已经被作者于2018/7/6 17:42:23编辑过]

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


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

如果不一定要用excel显示,建议改成专业报表。更加灵活

 

http://www.foxtable.com/webhelp/scr/1235.htm

 


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


加好友 发短信
等级:小狐 帖子:344 积分:3475 威望:0 精华:0 注册:2015/8/16 19:06:00
  发帖心情 Post By:2018/7/6 19:34:00 [只看该作者]

具体怎么写代码呢?? 我不会写代码,拜托了

 回到顶部
帅哥,在线噢!
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106387 积分:541076 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/7/6 20:53:00 [只看该作者]

比如,细节自行调整

Dim doc As New PrintDoc '定义一个报表
Dim rt As New prt.RenderTable() '定义一个表格对象
doc.Body.Children.Add(rt) '将表格对象加入到报表中
rt.Style.GridLines.All = New prt.Linedef '设置网格线
rt.Cols.Count = 3 '设置总列数
rt.Cells(0,1).SpanCols = 2 
Dim r As Row = Tables("日报").Rows(0)
rt.Cells(0,0).Text = "上日余额"
rt.Cells(0,1).Text = r("余额")

rt.Cells(1,1).SpanCols = 2 
rt.Cells(1,0).Text = "本日收入"
rt.Cells(1,1).Text = DataTables("日报").Compute("sum(借方)","借方 > 0 and 摘要 not like '%计%'")
rt.Cells(2,0).Text = "明细"

Dim drs As List(of DataRow) = DataTables("日报").Select("借方 > 0 and 摘要 not like '%计%'")
Dim cnt As Integer = drs.Count
For i As Integer = 0 To cnt - 1 
    rt.Cells(i+2,1).Text = drs(i)("摘要")
    rt.Cells(i+2,2).Text = drs(i)("借方")
Next

cnt = cnt+3
rt.Cells(cnt,1).SpanCols = 2 
rt.Cells(cnt,0).Text = "本日支出"
rt.Cells(cnt,1).Text = DataTables("日报").Compute("sum(贷方)","贷方 > 0 and 摘要 not like '%计%'")
cnt = cnt+1
rt.Cells(cnt,0).Text = "明细"

cnt = cnt+1

Doc.Preview() '预览报表

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


加好友 发短信
等级:三尾狐 帖子:646 积分:5691 威望:0 精华:0 注册:2017/4/7 12:15:00
  发帖心情 Post By:2019/2/15 10:40:00 [只看该作者]

专业报表太复杂,可以在一张excel报表设置两个表头和两个细节区(来自同一个查询表)吗?

目前只能生成两个sheet再手动合并,太麻烦。

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


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

以下是引用liufucan在2019/2/15 10:40:00的发言:
专业报表太复杂,可以在一张excel报表设置两个表头和两个细节区(来自同一个查询表)吗?
 

 

不可以,一个sheet只能有一个表(或者多个父子关联表)。


 回到顶部