以文本方式查看主题

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

--  作者:nuonuo384
--  发布时间:2020/5/8 9:35:00
--  如何将数据表中的数据,根据状态和部门的不同,遍历添加到word模版中的不同表格中?不同部门每种状态的数据数量不稳定

 

[此贴子已经被作者于2020/5/8 18:17:35编辑过]

--  作者:有点蓝
--  发布时间:2020/5/8 9:52:00
--  
要使用vba控制,比如
生成一个表:

Dim app As New MSWord.Application
try
    Dim doc = app.Documents.add
    Dim dt As DataTable = DataTables("表A")
    doc.Tables.Add(Range:=app.Selection.Range,NumRows:=1, NumColumns:= dt.DataCols.Count)
    With app.Selection.Tables(1)
        .ApplyStyleHeadingRows = True
        .ApplyStyleLastRow = True
        .ApplyStyleFirstColumn = True
        .ApplyStyleLastColumn = True
    End With
    For Each dc As DataCol In dt.DataCols
        app.Selection.TypeText(Text:=dc.Name)
        app.Selection.MoveRight(Unit:=12)
    Next
    For Each dr As DataRow In dt.DataRows
        For Each dc As DataCol In dt.DataCols
            app.Selection.TypeText(Text:=dr(dc.Name))
            app.Selection.MoveRight(Unit:=12)
        Next
    Next
    app.Visible = True
catch ex As exception
    msgbox(ex.message)
    app.Quit
finally
    
End try


-------------------------
控制插入WORD文档中的位置

1、先find然后选中;
2、然后建表

 
Dim app As New MSWord.Application
try
    Dim doc = app.Documents.Open("d:\\test.doc")
    
    If app.ActiveWindow.Selection.Find.Execute("test") = False Then
        \'插入表格
    End If
    
    app.Visible = True
catch ex As exception
    msgbox(ex.message)
    app.Quit
finally
    
End try

--  作者:xiaozhaomdh
--  发布时间:2020/8/5 16:49:00
--  
图片点击可在新窗口打开查看