Foxtable(狐表)用户栏目专家坐堂 → Foxtable操控Word的代码(测试成功,分享大家)


  共有5514人关注过本帖树形打印复制链接

主题:Foxtable操控Word的代码(测试成功,分享大家)

帅哥哟,离线,有人找我吗?
cxabc123
  11楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:810 积分:5250 威望:0 精华:0 注册:2009/2/6 10:38:00
  发帖心情 Post By:2013/9/8 17:46:00 [只看该作者]

在顶,求帮助

 回到顶部
帅哥哟,离线,有人找我吗?
lsy
  12楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:5246 积分:33163 威望:0 精华:8 注册:2013/1/17 21:28:00
  发帖心情 Post By:2013/9/8 17:47:00 [只看该作者]

多行文本,也有限制吗?

 回到顶部
帅哥哟,离线,有人找我吗?
cxabc123
  13楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:810 积分:5250 威望:0 精华:0 注册:2009/2/6 10:38:00
  发帖心情 Post By:2013/9/8 18:01:00 [只看该作者]

主要在字数,超过255就不行了,不能正常替换

 回到顶部
帅哥哟,离线,有人找我吗?
cxabc123
  14楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:810 积分:5250 威望:0 精华:0 注册:2009/2/6 10:38:00
  发帖心情 Post By:2013/9/8 21:06:00 [只看该作者]

再顶,求帮助

 回到顶部
帅哥哟,离线,有人找我吗?
cxabc123
  15楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:810 积分:5250 威望:0 精华:0 注册:2009/2/6 10:38:00
  发帖心情 Post By:2013/9/9 11:10:00 [只看该作者]

再顶,求帮助

 回到顶部
帅哥哟,离线,有人找我吗?
jweishan
  16楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:150 积分:2096 威望:0 精华:0 注册:2008/9/10 22:48:00
  发帖心情 Post By:2013/9/9 12:46:00 [只看该作者]

谢谢!售楼系统有一doc格式的购房合同要套打,一直没有好办法,参考此贴已经搞好了!生成doc格式的合同,非常好!

Dim dt As DataTable
Dim dr As DataRow
Dim tr As Row = Tables("合同台帐").Current

If tr Is Nothing Then
    Return
End If

If tr.Isnull("更名类别") = False Then
    If tr("更名审核") <> "√" Then
        MessageBox.Show("更名审核未通过,暂不能签约!")
        Return
    End If
End If

If tr("付款方式") = "银行按揭" Or tr("付款方式") = "公积金贷款" Then

    If tr("贷款审核") <> "√" Then
        MessageBox.Show("贷款审核未通过,暂不能签约!")
        Return
    End If
    
    If tr("资料") = True Then
        MessageBox.Show("贷款资料未交齐,暂不能签约!")
        Return
    End If
    
End If

If tr("财务审核") <> "√" Then
    MessageBox.Show("财务审核未通过,暂不能签约!")
    Return
End If

Dim cmd As new SQLCommand
cmd.C

Dim filename,tp As String

If tr("付款方式") = "分期付款" Then
    filename = "纸质合同模版.doc"
Else
    filename = "电子合同模版.doc"
End If
tp = ProjectPath & "Templats\" & filename

If FileSys.DirectoryExists(ProjectPath & "合同\") = False Then
    FileSys.CreateDirectory(ProjectPath & "合同\")
End If

FileSys.CopyFile(tp, ProjectPath & "合同\" & tr("房源代号") & "_" & tr("产权人姓名") & "_购房合同.doc",True)

Dim App As New MSWord.Application
Dim zd As New Dictionary(Of String, String)



 回到顶部
帅哥哟,离线,有人找我吗?
jweishan
  17楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:150 积分:2096 威望:0 精华:0 注册:2008/9/10 22:48:00
  发帖心情 Post By:2013/9/9 12:48:00 [只看该作者]

Try
    Dim nDoc = App.Documents.Open(ProjectPath & "合同\" & tr("房源代号") & "_" & tr("产权人姓名") & "_购房合同.doc")
    
    zd.add("{产权人姓名}",tr("产权人姓名"))
    zd.add("{产权人身份证}",tr("产权人身份证"))
    
    If tr("更名类别") <> "" Then
        cmd.CommandText = "Select 联系电话,通信地址 From {产权更名} Where 房源代号 = '" & tr("房源代号") & "'"
    Else
        cmd.CommandText = "Select 联系电话,通信地址 From {客户信息} Where 房源代号 = '" & tr("房源代号") & "'"
    End If

    dt = cmd.ExecuteReader
    If dt.DataRows.Count > 0 Then
        dr = dt.DataRows(0)
        zd.add("{联系电话}",dr("联系电话"))
        zd.add("{通信地址}",dr("通信地址"))
    End If
    
    Dim fts() As String
    fts = New String() {"{共有人姓名}","{共有人证件}","{共有人电话}","{共有人地址}","{共有情况}"}
    cmd.CommandText = "Select 共有人姓名,共有人身份证,联系电话,通信地址,产权份额 From {产权共有} Where 房源代号 = '" & tr("房源代号") & "'"
    dt = cmd.ExecuteReader
    Dim str(5) As String
    Dim sum As Single = 0
    If dt.DataRows.Count > 0 Then
        For Each dr In dt.DataRows
            If dr("共有人姓名") <> "" Then
                str(0) = str(0) & "/" & dr("共有人姓名")
            End If
            
            If dr("共有人身份证") <> "" Then
                str(1) = str(1) & "/" & dr("共有人身份证")
            End If
            
            If dr("联系电话") <> "" Then
                str(2) = str(2) & "/" & dr("联系电话")
            End If
            
            If dr("通信地址") <> "" Then
                str(3) = str(3) & "/" & dr("通信地址")
            End If
            
            If dr("产权份额") <> 0 Then
                str(4) = str(4) & " " & dr("共有人姓名") & ":" & Format(dr("产权份额"),"00%")
                sum = sum + dr("产权份额")
            End If
        Next
        str(0) = Str(0).TrimStart("/")
        str(1) = Str(1).TrimStart("/")
        str(2) = Str(2).TrimStart("/")
        str(3) = Str(3).TrimStart("/")
        str(4) = tr("产权人姓名") & ":" &  Format(1 - sum,"00%") & " " &  str(4)
        str(4) = Str(4).TrimStart()
    Else
        str(0) = "/"
        str(1) = "/"
        str(2) = "/"
        str(3) = "/"
        str(4) = "/"
    End If
    
 

 回到顶部
帅哥哟,离线,有人找我吗?
jweishan
  18楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:150 积分:2096 威望:0 精华:0 注册:2008/9/10 22:48:00
  发帖心情 Post By:2013/9/9 12:48:00 [只看该作者]

   For i As Integer = 0 To fts.length - 1
        zd.add(fts(i),str(i))
    Next
    
    Dim clm As String
    fts = New String() { "{栋号}","{层数}","{房号}","{建筑面积}","{套内面积}","{分摊面积}" }
    cmd.CommandText = "Select 栋号,层数,房号,建筑面积,套内面积,分摊面积 From {房源总表} Where 房源代号 = '" & tr("房源代号") & "'"
    dt = cmd.ExecuteReader
    If dt.DataRows.Count > 0 Then
        dr = dt.DataRows(0)
        For i As Integer = 0 To fts.length - 1
            clm = fts(i).Replace("{","")
            clm = clm.Replace("}","")
            zd.add(fts(i),dr(clm))
        Next
    End If
    
    fts = New String() {"{预售证号}","{竣工日期}","{交房日期}"}
    cmd.CommandText = "Select 预售证号,竣工日期,交房日期 From {预售证号} Where 栋号 = " & dr("栋号")
    dt = cmd.ExecuteReader
    If dt.DataRows.Count > 0 Then
        dr = dt.DataRows(0)
        For i As Integer = 0 To fts.length - 1
            clm = fts(i).Replace("{","")
            clm = clm.Replace("}","")
            zd.add(fts(i),dr(clm))
        Next
    End If
    
    If tr("折后单价") > 0 Then
        zd.add("{单价}", tr("折后单价"))
    Else
        zd.add("{单价}", tr("单价"))
    End If
    
    zd.add("{总价}", tr("合同总价"))
    zd.add("{总价大写}", CCNumber(tr("合同总价")))
    
    If tr("付款方式") =  "一次性" Then
        zd.add("{付款项号}","1")
        zd.add("{一次性总价}", tr("合同总价"))
        zd.add("{一次性总价大写}",  CCNumber(tr("合同总价")))
        zd.add("{一次性交款日期}", Date.Today())
        zd.add("{合同份数}","叁")
        zd.add("{按揭份数}","/")
        zd.add("{公积金份数}","/")
    Else
        zd.add("{一次性总价}", "/")
        zd.add("{一次性总价大写}", "/")
        zd.add("{一次性交款日期}","/")
    End If
    
    If tr("付款方式") =  "银行按揭" Then
        zd.add("{付款项号}","2")
        zd.add("{按揭首付}", tr("首付"))
        zd.add("{按揭首付大写}", CCNumber(tr("首付")))
        zd.add("{按揭金额}", tr("贷款金额"))
        zd.add("{按揭金额大写}", CCNumber(tr("贷款金额")))
        zd.add("{按揭交款日期}", Date.Today())
        zd.add("{银行名称}", "建设银行")
        zd.add("{合同份数}","肆")
        zd.add("{按揭份数}","壹")
        zd.add("{公积金份数}","/")
    Else
        zd.add("{按揭首付}", "/")
        zd.add("{按揭首付大写}", "/")
        zd.add("{按揭金额}",  "/")
        zd.add("{按揭金额大写}",  "/")
        zd.add("{按揭交款日期}",  "/")
        zd.add("{银行名称}", "/")
    End If
    
    If tr("付款方式") =  "公积金贷款" Then
        zd.add("{付款项号}","2")
        zd.add("{贷款首付}", tr("首付"))
        zd.add("{贷款首付大写}", CCNumber(tr("首付")))
        zd.add("{贷款金额}", tr("贷款金额"))
        zd.add("{贷款金额大写}", CCNumber(tr("贷款金额")))
        zd.add("{贷款交款日期}", Date.Today())
        zd.add("{贷款单位}", tr("贷款单位"))
        zd.add("{合同份数}","肆")
        zd.add("{按揭份数}","/")
        zd.add("{公积金份数}","壹")
        
    Else
        zd.add("{贷款首付}",  "/")
        zd.add("{贷款首付大写}",  "/")
        zd.add("{贷款金额}",  "/")
        zd.add("{贷款金额大写}",  "/")
        zd.add("{贷款交款日期}",  "/")
        zd.add("{贷款单位}",  "/")
    End If
    



 回到顶部
帅哥哟,离线,有人找我吗?
jweishan
  19楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:150 积分:2096 威望:0 精华:0 注册:2008/9/10 22:48:00
  发帖心情 Post By:2013/9/9 12:50:00 [只看该作者]

    If tr("付款方式") =  "分期付款" Then
        zd.add("{付款项号}","3")
        zd.add("{分期首付}", tr("首付"))
        zd.add("{分期首付大写}", CCNumber(tr("首付")))
        zd.add("{分期余款}", tr("合同总价") - tr("首付"))
        zd.add("{分期余款大写}", CCNumber(tr("合同总价") - tr("首付")))
        zd.add("{分期交款日期}", Date.Today())
        zd.add("{合同份数}","叁")
        zd.add("{按揭份数}","/")
        zd.add("{公积金份数}","/")
        
    Else
        zd.add("{分期首付}", "/")
        zd.add("{分期首付大写}", "/")
        zd.add("{分期余款}", "/")
        zd.add("{分期余款大写}",  "/")
        zd.add("{分期交款日期}", "/")
    End If
        For Each k As String In zd.Keys
        App.Selection.Find.ClearFormatting()
        App.Selection.Find.Text = k
        App.Selection.Find.Replacement.ClearFormatting()
        App.Selection.Find.Replacement.Text = zd(k)
        App.Selection.Find.Execute(Replace:=MSWord.WdReplace.wdReplaceAll)
    Next
    nDoc.Save()
    App.Visible = True
Catch ex As exception
    msgbox(ex.message)
End Try

 回到顶部
总数 19 上一页 1 2