以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  生成WORD报表问题  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=86337)

--  作者:落叶孤影
--  发布时间:2016/6/15 16:22:00
--  生成WORD报表问题
有这样一个word报表的格式:上半部分是对所有项目的资金汇总后统计,下半部分是对各项目明细进行统计,我也设置了一个word模版:已经实现了对表中选定的各项目进行统计(能生成各项目模版),但怎么才能实现对上半部分的汇总统计呢?要求是:上半部分汇总统计的文字模版不变,数据统计到里面,只生成这一部分,下半部分跟据表中选定的行生成各项目的统计。谢谢!
图片点击可在新窗口打开查看此主题相关图片如下:qq图片20160615160536.png
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:qq图片20160615160933.png
图片点击可在新窗口打开查看

--  作者:大红袍
--  发布时间:2016/6/15 16:24:00
--  

 用代码计算好,生成内容后,动态替换模板的内容

 

 http://www.foxtable.com/help/topics/2890.htm

 


--  作者:落叶孤影
--  发布时间:2016/6/15 18:12:00
--  

有这部份的视频吗?原来的优酷在线视频的地址怎么没有了呢?

 


--  作者:大红袍
--  发布时间:2016/6/15 18:44:00
--  

百度云盘,可以直接在线看的

 


--  作者:大红袍
--  发布时间:2016/6/15 18:45:00
--  
以下是引用落叶孤影在2016/6/15 18:12:00的发言:

有这部份的视频吗?原来的优酷在线视频的地址怎么没有了呢?

 

 

没必要视频教程吧?你用代码获取你要的数据后,然后写入到word里面不就行了?


--  作者:落叶孤影
--  发布时间:2016/6/15 18:58:00
--  

代码我还不熟练,图片点击可在新窗口打开查看我打开视频后他一直提示让我登录,但我登录后还是看不成,还提示登录。不知道是不是我浏览器的问题,我用的win10中自带的IE浏览器。


图片点击可在新窗口打开查看此主题相关图片如下:qq图片20160615185246.png
图片点击可在新窗口打开查看

--  作者:大红袍
--  发布时间:2016/6/15 18:59:00
--  

那你就看优酷的吧

 

http://i.youku.com/i/UMzAzNDIzOTY2MA==/playlists

 


--  作者:落叶孤影
--  发布时间:2016/6/15 21:25:00
--  

谢谢!图片点击可在新窗口打开查看

我看着帮助改了一段代码如下:这个模板如下图:1。是上半部份,2。是下半部份。
图片点击可在新窗口打开查看此主题相关图片如下:qq图片20160615224745.png
图片点击可在新窗口打开查看

但生成报表后是这样:
图片点击可在新窗口打开查看此主题相关图片如下:qq图片20160615225033.png
图片点击可在新窗口打开查看

能不能把模版中的上半部份只生成一条,下面不要再生成多余的?

Dim drs As List(of DataRow) = DataTables("日报表").Select("日期 = #" & Date.Today & "#") \'筛选出符合条件的行
If drs.Count > 0 Then \'如果存在符合条件的行
    Dim tm As String  = ProjectPath & "Attachments\\练习.doc" \'指定模板文件
    Dim fl As String = ProjectPath & "Reports\\练习.doc" \'指定目标文件
    Dim wrt As New WordReport(Tables("日报表"),tm,fl) \'定义一个WordReport
    For Each dr As DataRow In drs \'逐行生成报表
        wrt.Replace("[1]",DataTables("日报表").Compute("Sum(资金可用余额)"))
        wrt.Replace("[2]",DataTables("日报表").Compute("Sum(当天收入截至当天17时_现金回款额)"))
        wrt.Replace("[3]",DataTables("日报表").Compute("Sum(支出合计)")) \'用代码计算出总的销售数量并替换模板中的合计标记
        wrt.BuildOne(dr)
    Next
    wrt.Show() \'显示报表
End If

[此贴子已经被作者于2016/6/15 22:55:25编辑过]

--  作者:大红袍
--  发布时间:2016/6/15 23:28:00
--  

 你可以把第一部分、第二部分,都看作是一个整体,全部用代码生成。

 

 比如你模板里写

 

[第一部分]

 

[第二部分]

 

 然后编写代码,合成两个长长的字符串,即可。


--  作者:落叶孤影
--  发布时间:2016/6/16 10:06:00
--  
代码自己不会写,老师我做了个实例文件,已上传上去,您帮我看看吧!谢谢!注:用左边的导航窗口中的按钮生成报表。还有公式中替换的数据统计的是累计值,能统计成本日的合计吗?
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:练习项目.rar

[此贴子已经被作者于2016/6/16 10:07:00编辑过]