除了将文本插入和解析到空白 Word 字段之外,是否有任何方法可以使用 VBA 以编程方式将用户定义的字段和字段代码构建到我自己的模板中?此外,有没有办法让这些字段显示在可用字段列表中?

有帮助吗?

解决方案

我最近开发了一个使用 Word 的 MACROBUTTON 和 ADDIN 字段类型的解决方案。

我发现 MACROBUTTON 很有用,因为字段内的第三个空格分隔条目(以编程方式 field.code.text)显示在 Word 中。这允许我的用户在移动时观察字段。{ MACROBUTTON NoMacro * } 将在 Word 中显示“*”,例如当用户双击它时它不会执行任何操作,因为我故意没有定义名为“NoMacro”的宏。

ADDIN 字段不会显示(除非打开显示字段代码),并在其 field.data 属性中存储隐藏字符串。使用此字段,我可以有一个隐藏字段,用户无法看到或修改其内容(除非他们打开“显示字段代码”,他们可以看到它是一个 ADDIN 字段(但他们无法查看/编辑“数据”属性),并且他们可以像任何其他字段一样删除此字段。)

我发现这些页面很有用:

其他提示

你有什么想法?可以手动或使用VBA添加自定义文档属性。这些是DOCPROPERTY下的字段:

{ DOCPROPERTY "Test"  \* MERGEFORMAT } 

您可以使用宏来确保将自定义属性添加到文档中:

Sub AutoNew()
Dim objCustomProperties As DocumentProperties

Set objCustomProperties = ActiveDocument.CustomDocumentProperties

objCustomProperties.Add Name:="Test", _
   Type:=msoPropertyTypeString, Value:="Blah", _
   LinkToContent:=False

End Sub

更多信息

Automacros: http://msdn.microsoft。 COM / EN-US /库/ aa263747(office.10)的.aspx

了解Microsoft Office Word 2003中的自定义文档属性: http:// msdn .microsoft.com / EN-US /库/ aa537154.aspx

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top