以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  页眉页脚  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=127630)

--  作者:qaz17909
--  发布时间:2018/11/18 16:30:00
--  页眉页脚
页眉的设置问题,打开一个word后,添加页眉,页眉格式为左边是特定的字符如报告编号,右边是页码和页数,关键是页码和页数需要能根据需要调整,例如,当我引用了数字“1”时,该页表示从第二页开始,即“共2页 第2页”,当我引用了数字“2”时,该页表示从第三页开始,即“共3页 第3页”,如何写代码谢谢
--  作者:有点甜
--  发布时间:2018/11/18 23:58:00
--  

1、页眉无法引用你表格的数值。

 

2、具体问题发实例上来测试。

 

 


--  作者:qaz17909
--  发布时间:2018/11/19 10:35:00
--  
附件已上传,需要实现的是,页面上面的报告编号可以引用字段报告编号,当首页页数为1时,显示为“共2页,第2页”,当首页页数为2时,显示为“共3页,第3页”,当首页页数为4时,显示为“共5页,第5页”。该页主要作为附页用,要算上前面首页的页数。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:报表.rar
[此贴子已经被作者于2018/11/19 10:35:49编辑过]

--  作者:有点甜
--  发布时间:2018/11/19 10:40:00
--  

1、页眉页脚,是真实的每页的个数和页数,无法认为手动修改的。

 

2、如果你要引用表格里面的数据,那么你就不能弄成页眉页脚的形式,只能写表达式,如

 

<"共" & [首页页数]+1 & "页">


--  作者:qaz17909
--  发布时间:2018/11/19 10:44:00
--  
但是我附页有可能不只1页,会有多页的情况


--  作者:有点甜
--  发布时间:2018/11/19 10:52:00
--  

1、如果你前面有内容,比如插入了4页,那么你的附页的页眉自动会变成 共5页,第5页 的啊。

 

2、如果前面没有内容,但你需要页眉变成【共5页,第5页】,这个是做不到的。


--  作者:qaz17909
--  发布时间:2018/11/19 11:31:00
--  
很不幸,是第二种情况
--  作者:有点甜
--  发布时间:2018/11/19 11:44:00
--  
以下是引用qaz17909在2018/11/19 11:31:00的发言:
很不幸,是第二种情况

 

如果你的意思是【正文】的内容超过一页,那没办法处理。

 

你为什么不能把你的附页和前面的封面一起放在一个word文档里面?

 

你这种需求应该是没有过的,你之前见过这样的word文档?


--  作者:qaz17909
--  发布时间:2018/11/19 15:31:00
--  
恩,我只能放在一页了
--  作者:qaz17909
--  发布时间:2018/11/22 21:45:00
--  
word报表,我现在在页眉引用了报告编号,这样写代码虽然可以实现,但感觉不够简练,可否改进?另外就是关闭的时候会提示是否要保存,可否不提示?
Dim t As Table = CurrentTable
Dim tm As String  = ProjectPath & "Attachments\\报告.doc" \'指定模板文件
Dim fl As String = ProjectPath & "Reports\\报告.doc"
Dim wrt As New WordReport(t,tm,fl) \'定义一个WordReport
wrt.Build() \'逐行生成报表
wrt.Quit
Dim app As New MSWord.Application
try
    Dim doc As Object = app.Documents.Open(fl)
    app.ActiveWindow.ActivePane.View.SeekView = MSWord.WdSeekView.wdSeekCurrentPageHeader
    app.ActiveWindow.Selection.TypeText(Text:= t.Current("报告编号"))
    app.ActiveWindow.ActivePane.View.SeekView =  MSWord.WdSeekView.wdSeekMainDocument
    
    app.Visible = True
catch ex As exception
    msgbox(ex.message)
    app.Quit
finally
    \'app.Quit
End try