以文本方式查看主题 - 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=48223) |
-- 作者:hrw68529 -- 发布时间:2014/3/25 14:20:00 -- [求助]word模板遇到难题了!! 想写一个报告,报告下方要附一个表,如:姓名,职务等,但现在是根据一行生成一个报告,我想要的是:在一个报告内,红字的内容是根据表格每行内容生成的,不要一行生成一个报告,怎么办,求助!!!!! 市政府研究决定: ***同志任人口和计划生育委员会副主任; 免去***同志物价管理办公室副主任职务; ***同志任公安交通警察支队支队长; 免去***同志重点项目办公室副主任职务; ***同志任物价管理办公室副主任; |
-- 作者:狐狸爸爸 -- 发布时间:2014/3/25 14:27:00 -- 用标记: |
-- 作者:hrw68529 -- 发布时间:2014/3/25 14:46:00 -- 狐爸,wrt.Replace("[列表]",DataTables("表").GetComboListString("列").Replace("|",vbcrlf)) 内容是由[姓名]&[职务]组合的,怎么弄,如:***同志任人口和计划生育委员会副主任;***同志在姓名列,人口和计划生育委员会副主任在职务列,怎么改
|
-- 作者:hrw68529 -- 发布时间:2014/3/25 14:47:00 -- 组合我已经弄了,改上述代码,组合表达式为:<IIF([拟免职务空], "免去" &[姓名] & "同志" & [拟免职务] & ";", [姓名] & "同志" & "任" & [拟任职务] & ";")> |
-- 作者:狐狸爸爸 -- 发布时间:2014/3/25 14:51:00 -- 那就逐行组合合并:
dim s as string for Each dr as datarow in datatables("xxx").datarows if s > "" then s = s & vbcrlf end if s = s & dr("列1") & dr("列2") next |
-- 作者:hrw68529 -- 发布时间:2014/3/25 14:56:00 -- wrt.Replace("[列表]",DataTables("表").GetComboListString("列").Replace("|",vbcrlf)) ,列表是表的列字段吗, |
-- 作者:Bin -- 发布时间:2014/3/25 15:01:00 -- 你没搞清楚GetComboListString的作用吧http://www.foxtable.com/help/topics/1435.htm 要获得所有列 应该这样 dim s as string for each dc as datacol in DataTables("表").datacols s= s & dc.name & vbcrlf next |
-- 作者:狐狸爸爸 -- 发布时间:2014/3/25 15:02:00 -- 就是你在模版中插入的[列表],就和普通的[单价]、[单位]一样,你可以取任何名称,在生成报表前替换即可,例如[xxx]都行。
请认真看一下: http://www.foxtable.com/help/topics/2890.htm
说道底,在模板中无法通过表达式实现的计算,就插入一个标记,在生成模版前,用代码生成内容替换掉模版中的标记。 [此贴子已经被作者于2014-3-25 15:14:14编辑过]
|
-- 作者:hrw68529 -- 发布时间:2014/3/25 15:31:00 -- 谢谢 |
-- 作者:hrw68529 -- 发布时间:2014/3/26 9:33:00 -- 狐爸,根据你给的思路和代码,生成了报告,但有一个问题,生成的从第二行之后,不能和第第一行左对齐,这是怎么回事,请看:红色的部分不能和加黑的一行左对齐。 市政府研究决定: 黄荣武同志任信阳市人社局科长; 刘去同志任信阳市人社局科长,免去其信阳市人社局局长职务; 大家同志任信阳市人社局科长; 周老大同志任信阳市人社局科长; 免去王家银同志信阳市人社局局长职务; |