以文本方式查看主题

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

--  作者:风之痕
--  发布时间:2020/12/16 13:51:00
--  麻烦帮忙看下批量生成Word报表的代码是否有错
Dim tm As String  = ProjectPath & "Attachments\\临时.doc" \'指定模板文件
With Tables("临时") \'设置数据表
    If .TopPosition > -1 Then \'如果选定区域包括数据行
        For i As Integer = .TopPosition To .BottomPosition
            Dim r As Row = .Rows(i)
            Dim fileName As String = ProjectPath & "Reports\\"& r("bh") &""& r("xm") &".docx" \'指定目标文件
            Dim wrt As New WordReport(Tables("临时"),tm,fileName) \'定义一个WordReport
            wrt.BuildOne(r)
            wrt.quit
        Next
    End If
End With
msgbox("完成任务")

为什么在执行一遍后就卡死了,不继续执行,且生成的表报中对应字段的数据都没有替换进去

--  作者:有点蓝
--  发布时间:2020/12/16 14:04:00
--  
Dim tm As String  = ProjectPath & "Attachments\\临时.doc" \'指定模板文件
With Tables("临时") \'设置数据表
    If .TopPosition > -1 Then \'如果选定区域包括数据行
        For i As Integer = .TopPosition To .BottomPosition
            Dim r As Row = .Rows(i)
            Dim fileName As String = ProjectPath & "Reports\\"& r("bh") &""& r("xm") &".doc" \'指定目标文件
            Dim wrt As New WordReport(Tables("临时"),tm,fileName) \'定义一个WordReport
            wrt.BuildOne(r)
            wrt.quit
        Next
    End If
End With

--  作者:风之痕
--  发布时间:2020/12/16 14:11:00
--  
不是这里的问题,改过来后还是只执行一遍,没有将所选中行都生成报表,并且报表里面没有代入数据图片点击可在新窗口打开查看
--  作者:风之痕
--  发布时间:2020/12/16 14:15:00
--  
这个和我使用的是WPS有关系吗


--  作者:有点蓝
--  发布时间:2020/12/16 14:16:00
--  
请上传实例和模板测试
--  作者:风之痕
--  发布时间:2020/12/16 14:31:00
--  
麻烦您看一下
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:临时 - 副本.zip


--  作者:有点蓝
--  发布时间:2020/12/16 14:39:00
--  
我测试没有问题。和WPS有关系,word模板不支持WPS。不能使用wps编辑模板,不能把doc文档关联到wps。请安装完整版的office使用
--  作者:风之痕
--  发布时间:2020/12/16 14:44:00
--  
好的,谢谢