以文本方式查看主题 - Foxtable(狐表) (http://www.foxtable.com/bbs/index.asp) -- 专家坐堂 (http://www.foxtable.com/bbs/list.asp?boardid=2) ---- 汇总报表和调用excel模板生成的报表如何合并成一个pdf文件? (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=153903) |
||||
-- 作者:guosheng -- 发布时间:2020/8/27 9:40:00 -- 汇总报表和调用excel模板生成的报表如何合并成一个pdf文件? Dim b As New GroupTableBuilder("统计表1",DataTables("订单")) b.Groups.AddDef("产品") \'根据产品分组 b.Totals.AddDef("数量") \'对数量进行统计 b.Build \'生成统计表 Maintable = Tables("统计表1") \'打开生成的统计表 Dim Book
As New XLS.Book(ProjectPath &
"Attachments\\出库单.xls")
Dim fl As String = ProjectPath & "Reports\\出库单.pdf" Book.Build() \'生成细节区 Book.SaveToPDF(fl) \'保存为PDF文件 Dim Proc As New Process \'打开PDF文件 Proc.File = fl Proc.Start() |
||||
-- 作者:有点蓝 -- 发布时间:2020/8/27 10:03:00 -- 先生成execl报表,再填充统计表数据:http://www.foxtable.com/webhelp/topics/1148.htm Book.Build() \'生成细节区 这里添加导出统计表数据的代码
Book.SaveToPDF(fl) \'保存为PDF文件 |
||||
-- 作者:guosheng -- 发布时间:2020/8/27 10:50:00 -- 若出库单引用excel模板文件“出库单.xlsx”,而统计表引用的excel模板是“统计表.xlsx”。build之后,如何“统计表.xlsx”sheet(0)的内容复制到“出库单.xlsx”的sheet(1)中啊? Dim fl As String = ProjectPath & "Reports\\出库单.pdf" \'第1个excel模板生成 Dim Book As New XLS.Book(ProjectPath & "Attachments\\出库单.xlsx") Book.Build() \'生成细节区 \'第2个excel模板生成 Dim b As New GroupTableBuilder("统计表1",DataTables("订单")) b.Groups.AddDef("产品") \'根据产品分组 b.Totals.AddDef("数量") \'对数量进行统计 b.Build \'生成统计表 Dim Book1 As New XLS.Book(ProjectPath & "Attachments\\统计表.xlsx") Book1.Build() \'生成细节区 \'将Book1的sheet(0) 复制到Book的sheet(1) (含样式的复制) Book.SaveToPDF(fl) \'保存为PDF文件 Dim Proc As New Process \'打开PDF文件 Proc.File = fl Proc.Start() [此贴子已经被作者于2020/8/27 10:51:20编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2020/8/27 11:57:00 -- 在第一个模板里添加一个sheet,把第二个模板的内容放到这个sheet里即可。即把2个模板放到一个execl文件的不同sheet里 |
||||
-- 作者:guosheng -- 发布时间:2020/8/27 12:13:00 -- Dim fl As String = ProjectPath & "Reports\\出库单.pdf" Dim Book As New XLS.Book(ProjectPath & "Attachments\\出库单.xlsx") \'第二个统计表引用excel模板 若"统计表1"不存在,则不执行绿色阴影的代码,且只对book的sheet(0)生成pdf文件,sheet(1)不生成pdf,该怎么写啊? Dim b As New GroupTableBuilder("统计表1",DataTables("订单")) b.Groups.AddDef("产品") \'根据产品分组 b.Totals.AddDef("数量") \'对数量进行统计 b.Build \'生成统计表 Book.Build() \'生成细节区 Book.SaveToPDF(fl) \'保存为PDF文件 Dim Proc As New Process \'打开PDF文件 Proc.File = fl Proc.Start()
|
||||
-- 作者:有点蓝 -- 发布时间:2020/8/27 13:34:00 -- sheet(1)里面的表名改为“统计表1” 我测试没有问题的,不行就上传实例
|
||||
-- 作者:guosheng -- 发布时间:2020/8/27 13:55:00 -- excel文件中,两个sheet中都有模板,有一种情况,我只需要调用sheet(0)的模板,不调用sheet(1)的模板。执行下边代码就出错了(错误提示,找不到 统计表1)。该怎么解决啊? Dim fl As String = ProjectPath & "Reports\\出库单.pdf" Dim Book As New XLS.Book(ProjectPath & "Attachments\\出库单.xlsx") \'第二个统计表引用excel模板 ------不生成汇总数据,且不调用该模板 \'若"统计表1"不存在,则不执行绿色阴影的代码,且只对book的sheet(0)生成pdf文件,sheet(1)不生成pdf,该怎么写啊? \'Dim b As New GroupTableBuilder("统计表1",DataTables("订单")) \'b.Groups.AddDef("产品") \'根据产品分组 \'b.Totals.AddDef("数量") \'对数量进行统计 \'b.Build \'生成统计表 Book.Build() \'生成细节区 Book.SaveToPDF(fl) \'保存为PDF文件 Dim Proc As New Process \'打开PDF文件 Proc.File = fl Proc.Start()
|
||||
-- 作者:有点蓝 -- 发布时间:2020/8/27 14:17:00 -- 设计3个模板,如果只需要sheet(0),使用第一个模板,如果只需要sheet(1),使用第二个模板,如果2个都需要,使用第三个模板 |