以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]合并代码 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=118841) |
-- 作者:天一生水 -- 发布时间:2018/5/11 22:40:00 -- [求助]合并代码 有两个word报表模板:一审延长审理期限报告.doc;二审延长审理期限报告.doc 当[审判程序] = "一审"时,用一审延长审理期限报告.doc模板; 当[审判程序] = "二审"时,用二审延长审理期限报告.doc模板; 下面的第二、第三段代码其实就第一句的模板不同。 希望合并为一个按钮代码,尝试很长时间也没能合并成功,请老师指教,谢谢! -------------------------------------- 代码如下: 1、第一段代码; For Each r As Row In Tables("应诉通知书_table1") If r"审判程序")= "一审" Then ...... ElseIf If r"审判程序")= "二审" Then ...... End If Next 2、第二段代码: Dim tm As String = ProjectPath & "Attachments\\一审延长审理期限报告.doc" \'指定模板文件 With Tables("应诉通知书_table1") If .TopPosition > -1 Then \'如果选定区域包括数据行 Dim fileName As String = ProjectPath & "Reports\\延长审理期限报告\\预览.doc" \'指定目标文件 Dim wrt As New WordReport(Tables("应诉通知书_table1"),tm,fileName) \'定义一个WordReport For Each r As Row In .GetCheckedRows \'复选框选中 wrt.BuildOne(r) wrt.RecordsOnEachPage =1 Next wrt.Show() \'显示报表 End If End With 3、第三段代码: Dim tm As String = ProjectPath & "Attachments\\二审延长审理期限报告.doc" \'指定模板文件 With Tables("应诉通知书_table1") If .TopPosition > -1 Then \'如果选定区域包括数据行 Dim fileName As String = ProjectPath & "Reports\\延长审理期限报告\\预览.doc" \'指定目标文件 Dim wrt As New WordReport(Tables("应诉通知书_table1"),tm,fileName) \'定义一个WordReport For Each r As Row In .GetCheckedRows \'复选框选中 wrt.BuildOne(r) wrt.RecordsOnEachPage =1 Next wrt.Show() \'显示报表 End If End With |
-- 作者:有点蓝 -- 发布时间:2018/5/11 23:03:00 -- 比如1、3、5行是一审,然后这几行就输出到一审报告,2、4、6行是二审,然后这几行就输出到二审报告? |
-- 作者:天一生水 -- 发布时间:2018/5/12 7:06:00 -- 对 但是要在同一个文件中预览。
[此贴子已经被作者于2018/5/12 7:07:20编辑过]
|
-- 作者:有点蓝 -- 发布时间:2018/5/12 8:40:00 -- Dim tm As String = ProjectPath & "Attachments\\一审延长审理期限报告.doc" \'指定模板文件 Dim tm2 As String = ProjectPath & "Attachments\\二审延长审理期限报告.doc" \'指定模板文件 Dim fileName As String = ProjectPath & "Reports\\延长审理期限报告\\预览.doc" \'指定目标文件 Dim fileName2 As String = ProjectPath & "Reports\\延长审理期限报告\\预览2.doc" \'指定目标文件 Dim wrt As New WordReport(Tables("应诉通知书_table1"),tm,fileName) \'定义一个WordReport Dim wrt2 As New WordReport(Tables("应诉通知书_table1"),tm2,fileName2) \'定义一个WordReport wrt.RecordsOnEachPage =1 wrt2.RecordsOnEachPage =1 With Tables("应诉通知书_table1") With Tables("应诉通知书_table1") For Each r As Row In Tables("应诉通知书_table1") If r"审判程序")= "一审" Then wrt.BuildOne(r) ElseIf If r"审判程序")= "二审" Then wrt2.BuildOne(r) End If Next End With End With wrt.Show() wrt2.Show()
[此贴子已经被作者于2018/5/12 8:41:16编辑过]
|
-- 作者:天一生水 -- 发布时间:2018/5/12 9:54:00 -- 老师,提示出错。 我做了个实例,请老师指教,谢谢!
|
-- 作者:有点蓝 -- 发布时间:2018/5/12 10:08:00 -- 不能合并: Dim tm As String = ProjectPath & "Attachments\\一审延长审理期限报告.doc" \'指定模板文件 With Tables("应诉通知书_table1") Dim fileName As String = ProjectPath & "Reports\\延长审理期限报告\\预览.doc" \'指定目标文件 Dim wrt As New WordReport(Tables("应诉通知书_table1"),tm,fileName) \'定义一个WordReport wrt.RecordsOnEachPage =1 For Each r As Row In .GetCheckedRows \'复选框选中 If r("审判程序")= "一审" wrt.BuildOne(r) End If Next wrt.Quit() \'显示报表 End With tm = ProjectPath & "Attachments\\二审延长审理期限报告.doc" \'指定模板文件 With Tables("应诉通知书_table1") Dim fileName As String = ProjectPath & "Reports\\延长审理期限报告\\预览2.doc" \'指定目标文件 Dim wrt As New WordReport(Tables("应诉通知书_table1"),tm,fileName) \'定义一个WordReport wrt.RecordsOnEachPage =1 For Each r As Row In .GetCheckedRows \'复选框选中 If r("审判程序")= "二审" wrt.BuildOne(r) End If Next wrt.Show() \'显示报表 End With |