相关疑难解决方法(0)

如何使用VBA正确设置文档属性?

问题

我在使用Word 2010中的VBA设置文档属性时遇到了一些问题.

我有一个包含几个Heading 1部分的文档,我使用宏来提取所选部分(及其内容)并将其粘贴到新文档中.

这部分工作正常,但最后我需要设置几个文档属性,但没有设置它们.

我正在尝试设置内置和自定义属性,但出于这个问题的目的,我想设置标题,主题类别.

我已经创建了一个函数来设置我想要的属性(如下所示),并且VBA没有抛出任何错误(即使我删除了函数中的错误处理).

有谁知道我做错了什么?


该功能应如何工作

以下是该功能应该做什么的简要总结,但如果您发现更容易检查 - 下面的完整功能 -

  1. 检查该属性是否已存在
    • 它确实是一个default属性
      • 设置默认属性
      • PropertyTypeUsed变量设置为default
    • 它确实是一个custom财产
      • 设置自定义属性
      • PropertyTypeUsed变量设置为custom
    • 它根本不存在
      • 创建一个新的自定义属性
      • 设置自定义属性
      • PropertyTypeUsed变量设置为custom
  2. 检查是否已成功设置值
    • default应该设置一个属性
      • 该物业成功设定?
    • custom应该设置一个属性
      • 该物业成功设定?
  3. 返回结果

我相信这个功能导致了这个问题

Function UpdateDocumentProperty(ByRef doc As Document, _
                                ByVal propertyName As String, _
                                ByVal propertyValue As Variant, _
                                Optional ByVal propertyType As Office.MsoDocProperties = 4)

    '** Set …
Run Code Online (Sandbox Code Playgroud)

vba word-vba word-2010

11
推荐指数
1
解决办法
1万
查看次数

标签 统计

vba ×1

word-2010 ×1

word-vba ×1