使用VB.Net更改Word 2007文档字段的值

时间:2012-09-22 15:16:16

标签: vb.net ms-word field mailmerge

我有一个word文档,文本周围散布着许多字段。这些字段是使用insert&gt;创建的。 <快速部件>领域。每个字段都有一个唯一的名称。

我设法打开了文档,但我不知道如何引用特定的字段,以便我可以放入我的价值。

我设法使用以下方法遍历文档中的字段:

Dim flds As Word.Fields
Dim fld As Word.Field

flds = wrdDoc.Fields
For Each fld In flds
...
next

但是“fld”变量似乎没有“name”属性,因此我不知道如何引用特定字段。

我希望有类似的东西:

flds("MyField1") = "blablabla"

但我只能将索引(整数)放在括号中。

关于如何实现目标的任何想法?

由于

1 个答案:

答案 0 :(得分:1)

他们是什么类型的领域? 我不知道这是否适合您的情况,但是如果显示的字段看起来像这样(使用ALT-F9):

{DOCVARIABLE fieldname}

然后使用它:

wordDocument.Variables("fieldname").Value = "abc"
wordDocument.Fields.Update

这仅适用于DOCVARIABLE-Fields。 (请注意,在这种情况下,传递给.Value的字符串可能不为空。)