以文本方式查看主题

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

--  作者:guimingze
--  发布时间:2017/3/12 21:43:00
--  关于word报表 开头设置固定内容的代码修改?
假如想在开头加上 “关于干部任免的公示”  固定内容只加一次    以下代码实现不了差在哪呢老师

Dim tm As String  = ProjectPath & "Attachments\\公示.doc" \'指定模板文件
Dim fl As String = ProjectPath & "Reports\\公示.doc" \'指定目标文件
Dim wrt As New WordReport(Tables("酝酿上会"),tm,fl) \'定义一个WordReport
Dim sum As Integer
Dim cnt As Integer
For Each r As Row In Tables("酝酿上会").rows \'逐行生成报表
    If cnt  > 0 Then
        wrt.ReplaceOne("关于干部任免的公示","")
    End If
    cnt = cnt + 1
    wrt.BuildOne(r)
Next
wrt.Show() \'显示报表

--  作者:有点色
--  发布时间:2017/3/12 23:39:00
--  
代码没问题的,你要在你的word模板里面你加入字符 关于干部任免的公示
--  作者:guimingze
--  发布时间:2017/3/14 10:19:00
--  回复:(guimingze)关于word报表 开头设置固定内容的...
老师给方法管用,但是我前面加的固定一句话   其实是固定一篇固定的word,  可不可以设计好现成要添加的word,然后生成时候直接插进去  
--  作者:狐狸爸爸
--  发布时间:2017/3/14 11:50:00
--  
可以插入一些标记,需要时用ReplaceOne替换为实际内容,不需要时用ReplaceOne替换为空。
--  作者:guimingze
--  发布时间:2017/3/14 14:24:00
--  回复:(狐狸爸爸)可以插入一些标记,需要时用Replac...
可不可以这样老师  我自己建立一个 .doc word 文档  比如   模板 .doc    是这样写么?




Dim tm As String  = ProjectPath & "Attachments\\公示.doc" \'指定模板文件
Dim fl As String = ProjectPath & "Reports\\公示.doc" \'指定目标文件
Dim wrt As New WordReport(Tables("酝酿上会"),tm,fl) \'定义一个WordReport
Dim sum As Integer
Dim cnt As Integer
For Each r As Row In Tables("酝酿上会").rows \'逐行生成报表
    If cnt  > 0 Then
        wrt.ReplaceOne("Reports/模板 .doc","")
    End If
    cnt = cnt + 1
    wrt.BuildOne(r)
Next
wrt.Show() \'显示报表


--  作者:有点色
--  发布时间:2017/3/14 17:55:00
--  

mark

 

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:word插入word.zip


--  作者:guimingze
--  发布时间:2017/3/14 21:47:00
--  回复:(guimingze)回复:(狐狸爸爸)可以插入一些标...
老师可能是我没表述清楚   我的意思是    做好的word    模板 .doc    模板字段后面加上正常生成的数据应该如何修改下面的代码   比如 我的模板里有      “ 人员名册其中具体情况如下;”  的开头(但是不是一句话一整篇)     然后我后面的自动生成的数据要和前面的加在一起。  如何实现


Dim tm As String  = ProjectPath & "Attachments\\公示.doc" \'指定模板文件
Dim fl As String = ProjectPath & "Reports\\公示.doc" \'指定目标文件
Dim wrt As New WordReport(Tables("酝酿上会"),tm,fl) \'定义一个WordReport
Dim sum As Integer
Dim cnt As Integer
For Each r As Row In Tables("酝酿上会").rows \'逐行生成报表
    If cnt  > 0 Then
        wrt.ReplaceOne("Reports/模板 .doc","")
    End If
    cnt = cnt + 1
    wrt.BuildOne(r)
Next
wrt.Show() \'显示报表

--  作者:有点蓝
--  发布时间:2017/3/14 21:57:00
--  
在模板的指定地方发上一些特殊字符,比如:


此主题相关图片如下:无标题.png
按此在新窗口浏览图片

然后代码替换掉

wrt.ReplaceOne("xxx标题】","这是主标题文字")
wrt.ReplaceOne("xxx副标题】","副标题副标题副标题副标题")

替换后的效果

此主题相关图片如下:2.png
按此在新窗口浏览图片


--  作者:cd_tdh
--  发布时间:2017/3/14 22:10:00
--  
直接word报表就可以了啊,在模版里面设置就可以了。
[此贴子已经被作者于2017/3/14 22:12:40编辑过]

--  作者:有点色
--  发布时间:2017/3/15 9:43:00
--  
回复7楼,请参考6楼。