以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  word 报表表格分页问题  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=104945)

--  作者:133198609
--  发布时间:2017/8/8 21:35:00
--  word 报表表格分页问题

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


有个word报表,里面有不同的三页,要求填写一项内容,当第一页填满的时候填在第二页,第二填满的时候填在第三页。如果内容多不能全部填在第一页,因为那样格子会挤到后面的页数。

意思就是不管内容多少(不超过三页),不能改变页码和三个表格。

 

现在需要做录入的窗口,第一种想法就是录入窗口就是一个备注列,然后生成报表的时候截取前面多少字放第一页,再截取之后多少字放第二页,剩下的放第三页。

第二种想法就是在录入的时候设置三个备注列,然后输入的时候来分段,再把三列分别放到三页里面。

 

为便于录入,第一张办法是否可行?或者有其他更好的方法?


--  作者:有点蓝
--  发布时间:2017/8/8 22:02:00
--  
表格是可以自动分页的呀。至于页码,没有办法控制。

如果要精确控制,还是使用专业报表吧

--  作者:133198609
--  发布时间:2017/8/8 22:09:00
--  

表格自动分页影响页码,不能影响页码。

 

能否按第一钟办法,第一页 提取备注列的前指定数量的字符,然后第二页第三页也提取指定数量的字符呢?


--  作者:133198609
--  发布时间:2017/8/8 22:11:00
--  回复:(有点蓝)表格是可以自动分页的呀。至于页码,...

比如:

1、定义三个字符变量

2、判断备注列的长度,如果大于多少则变量一等于哪一段,变量二等于哪一段……

3、生成报表里三个格子等于三个变量

[此贴子已经被作者于2017/8/8 22:18:45编辑过]

--  作者:有点蓝
--  发布时间:2017/8/8 22:22:00
--  
模板没有办法,除非使用vba手工往word里插入数据

提取字符可以使用substring。



--  作者:有点甜
--  发布时间:2017/8/9 10:06:00
--  

方法一:你不是可以控制表格的高度?固定为3页的高度不就好了?然后把内容填充进去。

 

方法二:如果你确实需要三页分开填充,第一页截取100个字符填充,第二页截取100个字符,第三页截取100个字符

 

http://www.foxtable.com/webhelp/scr/2890.htm

 


--  作者:133198609
--  发布时间:2017/8/9 19:39:00
--  回复:(有点甜)方法一:你不是可以控制表格的高度?...

Dim tm As String  = ProjectPath & "Attachments\\订单.doc" \'指定模板文件
Dim fl As String = ProjectPath & "Reports\\订单.doc" \'指定目标文件
Dim wrt As New WordReport(Tables("订单"),tm,fl) \'定义一个WordReport
wrt.Replace("[合计]",DataTables("订单").Compute("Sum(数量)")) \'用代码计算出总的销售数量并替换模板中的合计标记
wrt.Build() \'生成报表
wrt.Show() \'显示报表

 

 

就这段代码,应该可以实现,谢谢指点!