以文本方式查看主题

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

--  作者:wusim
--  发布时间:2023/4/15 7:00:00
--  [求助]怎样自动选择WORD模板和?
原公式:

Dim dr As DataRow = Tables("平台").current.DataRow

If dr("施工类别")= "年审" Then

    Dim tm As String  = ProjectPath & "Attachments记录年检.docx" \'指定模板文件

Next

Else

  Dim tm As String  = ProjectPath & "Attachments\\记录.docx" \'指定模板文件

End If

  Dim t As Table = Tables("平台")

    For i As Integer = t.TopPosition To t.BottomPosition

        Dim r As Row = t.Rows(i)

        Dim fl As String =  "d:\\use\\平台\\" & r("出厂编号")  &"-" & r("工作日期") &"记录" &".doc"

        \'指定目标文件

        Dim wrt As New WordReport(t,tm,fl) \'定义一个WordReport

        wrt.Buildone(r) \'逐行生成报表

        wrt.quit

   Next

要求:用鼠标已选择多条记录,要根据字段施工类别内容自动选择相应WORD模板,批量生成WORD文件,怎样修改原公式?
[此贴子已经被作者于2023/4/15 7:01:04编辑过]

--  作者:有点蓝
--  发布时间:2023/4/15 9:12:00
--  
Dim tm As String  ProjectPath & "Attachments\\记录.docx"
Dim t As Table = Tables("平台")

Dim dr As DataRow = t.current.DataRow

If dr("施工类别")= "年审" Then

   tm  ProjectPath & "Attachments记录年检.docx" \'指定模板文件

End If


    For i As Integer = t.TopPosition To t.BottomPosition

        Dim r As Row = t.Rows(i)

        Dim fl As String =  "d:\\use\\平台\\" & r("出厂编号")  &"-" & r("工作日期"&"记录" &".doc"

        \'指定目标文件

        Dim wrt As New WordReport(t,tm,fl\'定义一个WordReport

        wrt.Buildone(r\'逐行生成报表

        wrt.quit

   Next


--  作者:wusim
--  发布时间:2023/4/15 18:14:00
--  
也是不能自动选择模板,当鼠标已选择多条记录时,当第一条记录的施工类别是“年审”,以后的模板也会选择“记录年检.docx”,不会选择“记录.docx
--  作者:有点蓝
--  发布时间:2023/4/15 18:17:00
--  

    For i As Integer = t.TopPosition To t.BottomPosition

        Dim r As Row = t.Rows(i)

Dim tm As String  ProjectPath & "Attachments\\记录.docx"

If r("施工类别")= "年审" Then

   tm  ProjectPath & "Attachments记录年检.docx" \'指定模板文件

End If

        Dim fl As String =  "d:\\use\\平台\\" & r("出厂编号")  &"-" & r("工作日期"&"记录" &".doc"

        \'指定目标文件

        Dim wrt As New WordReport(t,tm,fl\'定义一个WordReport

        wrt.Buildone(r\'逐行生成报表

        wrt.quit

   Next