如何使用MS Word Automation删除最后一个空表行

时间:2015-04-27 18:45:37

标签: javascript ms-word automation hta

我需要你的帮助,

如何修改下面的javascript代码,以便在表格的末尾使用MS Word Automation动态生成一个空表行?

注意到执行的记录集中只有(8)条记录。

所以在这段代码的某处,一行正在自动添加?

我已附上问题的屏幕截图: enter image description here

下面使用的代码来自我的HTA应用程序:

function test() {

        var wordApp = new ActiveXObject("Word.Application")
        var doc = wordApp.Documents.Add()
        var col

        doc.Tables.Add(Range=doc.Range(0, 0), numrows=1, numcolumns=2)
        doc.Tables(1).Borders.Enable = true

        row = 1
        col = 0
        while (!rs.eof) {

            col = col + 1

            alert(row)

            if (col = 1) {
                doc.Tables(1).Cell(row,1).Range.Text = rs.Fields("firstname").value
                col = col + 1
                rs.movenext
            }
            if (col = 2) {
                doc.Tables(1).Rows.Add()
                doc.Tables(1).Cell(row,2).Range.Text = rs.Fields("firstname").value
                col = 1
                rs.movenext
            }

            row++
        }

        wordApp.Visible = true
        wordApp.Activate();
        //wordApp.WindowState = 1
}

1 个答案:

答案 0 :(得分:1)

更改

        if (col = 2) {
            doc.Tables(1).Rows.Add()
            doc.Tables(1).Cell(row,2).Range.Text = rs.Fields("firstname").value
            col = 1
            rs.movenext
        }

    if (col = 2) {
        if (rs.AbsolutePosition < rs.RecordCount) {            
            doc.Tables(1).Rows.Add()
        }
        doc.Tables(1).Cell(row,2).Range.Text = rs.Fields("firstname").value
        col = 1
        rs.movenext
    }