以文本方式查看主题

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

--  作者:zyl19810322
--  发布时间:2017/8/16 20:51:00
--  [求助]word报表中回车换行的问题
word报表中用chr(13) & chr(10)
可以回车换行,但是由于word的版面是段前空两个字符,结果生成的文档对不齐,试了用chr(13) & chr(10) & chr(10)换行,有时候可以对齐,有时候换两行,啥情况啊这是?

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


--  作者:有点甜
--  发布时间:2017/8/16 21:31:00
--  

 你模板怎么弄的?你写代码替换字符的?贴出代码或做个例子看看。


--  作者:zyl19810322
--  发布时间:2017/8/16 22:18:00
--  
Dim t As Table = Tables("基本信息")
For i As Integer = t.TopPosition To t.BottomPosition
    Dim y As Byte = t.Rows(i).DataRow.GetChildRows("违法及处理情况").count
    t.Rows(i).Locked = True
    For Each br As DataRow In t.Rows(i).DataRow.GetChildRows("违法及处理情况")
        br.Locked = True
    Next
    For Each ar As DataRow In t.Rows(i).DataRow.GetChildRows("证据证明")
        ar.Locked = True
    Next
    Dim tt As Row = t.Rows(i)
    Dim tml As String  = ProjectPath & "Attachments\\立案审批表.doc" \'指定模板文件
Dim flt As String = ProjectPath & "Reports"
    Dim zjzm As String = ""
    For Each dr In t.Rows(i).DataRow.GetChildRows("违法及处理情况")
For Each zdr As DataRow In t.Rows(i).DataRow.GetChildRows("证据证明")
    zjzm &= zdr("序号") & ":" & zdr("证据") & ",证明" & zdr("证明") & "。" & chr(13) & chr(10)
    jzj &= zdr("证据") & "、" \'简版证据
Next
    Dim gzs As New WordReport(t,tmg,flg)
    gzs.ReplaceOne("[全部证据证明]", zjzm.TrimEnd(chr(13),chr(10)))
    gzs.BuildOne(t.Rows(i))
    gzs.quit()
大概就是这个样子
[此贴子已经被作者于2017/8/16 22:18:49编辑过]

--  作者:有点甜
--  发布时间:2017/8/16 22:54:00
--  

试试

 

 

For Each zdr As DataRow In t.Rows(i).DataRow.GetChildRows("证据证明")
    zjzm &= "    " & zdr("序号") & ":" & zdr("证据") & ",证明" & zdr("证明") & "." & vbcrlf
    jzj &= "    " zdr("证据") & "?" \'简版证据
Next

 


--  作者:zyl19810322
--  发布时间:2017/8/17 7:54:00
--  
没用的,我最早的代码就是vbcrlf
--  作者:有点甜
--  发布时间:2017/8/17 9:30:00
--  
以下是引用zyl19810322在2017/8/17 7:54:00的发言:
没用的,我最早的代码就是vbcrlf

 

做个例子上来测试。