以文本方式查看主题

-  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=80000)

--  作者:dixiaxiaodan
--  发布时间:2016/1/13 20:23:00
--  [求助]excel报表能不能打印范围能不能设置动态条件

<End>
ACReg Msn TsnFh TsnCy
<飞行小时> [ACReg] [Msn] [TsnFh] [TsnCy] <月份 = &[报表月]>

 

 

我就是想实现,自动输出报表月列显示月份的数据,但按上面设置,输出数据为空


--  作者:dixiaxiaodan
--  发布时间:2016/1/13 20:24:00
--  

先谢谢各位老师了


--  作者:wyz20130512
--  发布时间:2016/1/13 20:38:00
--  回复:(dixiaxiaodan)先谢谢各位老师了
是不是想输出指定月份的数据?
--  作者:dixiaxiaodan
--  发布时间:2016/1/13 20:43:00
--  
对的,但是我又不想每次都改报表模板,所以想将打印区域的条件指定到报表月列,这样,我就可以通过设置报表月列的数值,输出指定月份的报表
--  作者:dixiaxiaodan
--  发布时间:2016/1/13 20:49:00
--  
以下是引用wyz20130512在2016/1/13 20:38:00的发言:
是不是想输出指定月份的数据?

对的,但是我又不想每次都改报表模板,所以想将打印区域的条件指定到报表月列,这样,我就可以通过设置报表月列的数值,输出指定月份的报表


--  作者:wyz20130512
--  发布时间:2016/1/13 20:53:00
--  回复:(dixiaxiaodan)以下是引用wyz20130512在2016/...
这个很好解决,你先筛选出符合条件的数据,然后通过Excel报表输出即可.
--  作者:dixiaxiaodan
--  发布时间:2016/1/13 20:59:00
--  
用筛选的方法,我会的,我是想确认下,这个打印范围能不能动态设置,要是不能的话,就只能乖乖的去筛选了,谢谢啊
--  作者:wyz20130512
--  发布时间:2016/1/13 21:01:00
--  回复:(dixiaxiaodan)用筛选的方法,我会的,我是想...
也可动态设置,参考:
--  作者:dixiaxiaodan
--  发布时间:2016/1/14 10:40:00
--  
Dim Book As New XLS.Book(ProjectPath & "Attachments\\可靠性月报2.xls") \'打开模板
Dim fl As String = ProjectPath & "Reports\\可靠性月报2.xls"
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Dim Dr_Months = DataTables("飞行小时").Find("报表月 <>  0 ") \'找出年份列

Sheet(3,20).Value = "<日期 = " & Dr_Months("报表月") & ">"  \'写入打印条件


Book.Build() \'生成报表
Book.Save(fl)
Dim Proc As New Process
Proc.File = fl
Proc.Start()

竟然没有效果

--  作者:dixiaxiaodan
--  发布时间:2016/1/14 10:46:00
--  
以下是引用dixiaxiaodan在2016/1/14 10:40:00的发言:
Dim Book As New XLS.Book(ProjectPath & "Attachments\\可靠性月报2.xls") \'打开模板
Dim fl As String = ProjectPath & "Reports\\可靠性月报2.xls"
Dim Sheet As XLS.Sheet = Book.Sheets(0)
Dim Dr_Months = DataTables("飞行小时").Find("报表月 <>  0 ") \'找出年份列

Sheet(3,20).Value = "<日期 = " & Dr_Months("报表月") & ">"  \'写入打印条件


Book.Build() \'生成报表
Book.Save(fl)
Dim Proc As New Process
Proc.File = fl
Proc.Start()

竟然没有效果

Dim Book As New XLS.Book(ProjectPath & "Attachments\\可靠性月报.xls") \'打开模板
Dim fl As String = ProjectPath & "Reports\\可靠性月报.xls"
Dim Sheet As XLS.Sheet = Book.Sheets(1)
Dim Dr_Months = DataTables("飞行小时").Find("报表月 <>  0 ") \'找出年份列
Sheet(3,20).Value = "<月份 = " & Dr_Months("报表月") & " >"  \'写入打印条件


Book.Build() \'生成报表
Book.Save(fl)
Dim Proc As New Process
Proc.File = fl
Proc.Start()
\'
发错了,应该是这样写的,但是还是没效果