【问题标题】:How do I store a variable permanently in a Word 2010 document using VBA?如何使用 VBA 在 Word 2010 文档中永久存储变量?
【发布时间】:2014-12-02 19:06:25
【问题描述】:

我知道如何使用 VBA 在 Word 2010 中使用变量。但是,当文档关闭并重新打开时,它们都会被重置。

如何将变量永久存储在 Word 文档中?

【问题讨论】:

    标签: vba variables ms-word word-2010


    【解决方案1】:

    这个可以用:

    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
    

    Ref MS kb Link

    Ref SO link

    【讨论】:

      【解决方案2】:

      改为使用自定义文档属性。这些永久存储在 Word 文档中,并且可以使用 VBA 进行编辑和检索。

      要创建自定义属性,请转到“文件”>“属性”>“高级属性”(这在旧版 Word 中的位置略有不同,但仍会在某处...)。

      从高级属性转到自定义选项卡,并填写您的自定义文档属性的名称、字段类型(您可以选择文本、日期、数字或是/否标志,这应该涵盖大多数选项) , 和一个起始值 - 您必须包含一个起始值,否则“添加”按钮将显示为灰色。点击添加。

      现在您的文档中有一个自定义属性,您可以使用 VBA 来操作和引用它。

      要更改属性的值,请使用以下代码:

      Application.ActiveDocument.CustomDocumentProperties.Item(1).Value = "Your new value..."
      

      Item(1) 已设置,因为这是引用文档中的第一个自定义文档属性。如果您有多个自定义属性,则需要更改数字以引用正确的属性,或者编写一些 VBA 以按名称引用该属性。

      要将属性传递给变量,请使用以下代码:

      strYourVariable = Application.ActiveDocument.CustomDocumentProperties.Item(1).Value
      

      【讨论】:

      • 请注意,它们的最大字符数限制为 255 个字符。
      猜你喜欢
      • 2020-07-09
      • 2011-01-04
      • 1970-01-01
      • 2021-03-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-26
      • 1970-01-01
      相关资源
      最近更新 更多