C#中的Word自动化 - 在Word中创建表

时间:2008-11-13 06:24:25

标签: c# automation ms-word

我有一个C#应用程序,它将打开一个word文档,然后用我喜欢的名称,类等数据替换一些预定义的书签。

这只是字符串值。现在我想要将具有动态行数的表呈现给word文档。我希望表格位于文档中的特定位置。

我可以使用书签吗。如果是这样的???还有其他方法吗?

1 个答案:

答案 0 :(得分:3)

是的,您可以使用书签,也可以使用字段将其替换为带有n的表。行和n没有。列。

您可以遍历字段并获取其范围并使用范围,您可以在字段位置添加表格:

//CREATING OBJECTS OF WORD AND DOCUMENT

Word.Application oWord = new Word.Application();

Word.Document oWordDoc = new Word.Document();

foreach (Word.Field myMergeField in oWordDoc.Fields)

{

    iTotalFields++;

    Word.Range rngFieldCode = myMergeField.Code;

    String fieldText = rngFieldCode.Text;    


    // ONLY GETTING THE MAILMERGE FIELDS    
    if (fieldText.StartsWith("tablename"))

    {
        myMergeField.Select();
        oWordDoc.table.add(rngFieldCode,4//for rows,4// for colioulns,ref omising....);
     }
}