【发布时间】:2014-12-02 19:06:25
【问题描述】:
我知道如何使用 VBA 在 Word 2010 中使用变量。但是,当文档关闭并重新打开时,它们都会被重置。
如何将变量永久存储在 Word 文档中?
【问题讨论】:
标签: vba variables ms-word word-2010
我知道如何使用 VBA 在 Word 2010 中使用变量。但是,当文档关闭并重新打开时,它们都会被重置。
如何将变量永久存储在 Word 文档中?
【问题讨论】:
标签: vba variables ms-word word-2010
这个可以用:
Sub Test()
ActiveDocument.Variables.Add Name:="PermanentVar", Value:=100
'ActiveDocument.Variables("PermanentVar").Delete
End Sub
检查是否保留:
Private Sub Document_Open()
Msgbox ActiveDocument.Variables("PermanentVar")
End Sub
【讨论】:
改为使用自定义文档属性。这些永久存储在 Word 文档中,并且可以使用 VBA 进行编辑和检索。
要创建自定义属性,请转到“文件”>“属性”>“高级属性”(这在旧版 Word 中的位置略有不同,但仍会在某处...)。
从高级属性转到自定义选项卡,并填写您的自定义文档属性的名称、字段类型(您可以选择文本、日期、数字或是/否标志,这应该涵盖大多数选项) , 和一个起始值 - 您必须包含一个起始值,否则“添加”按钮将显示为灰色。点击添加。
现在您的文档中有一个自定义属性,您可以使用 VBA 来操作和引用它。
要更改属性的值,请使用以下代码:
Application.ActiveDocument.CustomDocumentProperties.Item(1).Value = "Your new value..."
Item(1) 已设置,因为这是引用文档中的第一个自定义文档属性。如果您有多个自定义属性,则需要更改数字以引用正确的属性,或者编写一些 VBA 以按名称引用该属性。
要将属性传递给变量,请使用以下代码:
strYourVariable = Application.ActiveDocument.CustomDocumentProperties.Item(1).Value
【讨论】: