Word VBA教程:CustomProperties集合

   
SmartTag
CustomProperties
CustomProperty

该集合由CustomProperty对象组成,这些对象代表与智能标记相关的属性。CustomProperties集合包含文档中所有智能标记的自定义属性。

使用 CustomProperties集合

使用Properties属性可返回一个单独的 CustomProperties对象。使用 CustomProperties对象的Add方法可从 Microsoft Word Visual Basic for Applications 项目中创建一个自定义属性。本示例为活动文档中的第一个智能标记创建一个新的属性,并显示用于该标记的 XML 代码。


Sub AddProps()
    With ThisDocument.SmartTags(1)
        .Properties.Add Name:="President", Value:=True
        MsgBox "The XML code is " & .XML
    End With
End Sub

使用Properties(index) 可返回智能标记的一个单独属性,其中 index 是该属性的编号。本示例显示当前文档中第一个智能标记的第一个属性的名称和属性值。


Sub ReturnProps()
    With ThisDocument.SmartTags(1).Properties(1)
        MsgBox "The Smart Tag name is: " & .Name & vbLf & .Value
    End With
End Sub

使用Count属性可返回智能标记的自定义属性编号。本示例在当前文档中循环遍历所有的智能标记,然后在新文档中列出所有具有自定义属性的智能标记的自定义属性名称和属性值。


Sub SmartTagsProps()
    Dim docNew As Document
    Dim stgTag As SmartTag
    Dim stgProp As CustomProperty
    Dim intTag As Integer
    Dim intProp As Integer
    Set docNew = Documents.Add
    'Create heading info in new document
    With docNew.Content
        .InsertAfter "Name" & vbTab & "Value"
        .InsertParagraphAfter
    End With
    'Loop through smart tags in current document
    For intTag = 1 To ThisDocument.SmartTags.Count
        With ThisDocument.SmartTags(intTag)
            'Verify that the custom properties
            'for smart tags is greater than zero
            If .Properties.Count > 0 Then
                'Loop through the custom properties
                For intProp = 1 To .Properties.Count
                    'Add custom property name to new document
                    docNew.Content.InsertAfter .Properties(intProp) _
                        .Name & vbTab & .Properties(intProp).Value
                    docNew.Content.InsertParagraphAfter
                Next
            Else
                'Display message if there are no custom properties
                MsgBox "There are no custom properties for the " & _
                    "smart tags in your document."
            End If
        End With
    Next
    'Convert the content in the new document into a table
    docNew.Content.Select
    Selection.ConvertToTable Separator:=wdSeparateByTabs, NumColumns:=2
End Sub

Word VBA教程

Word VBA参考教程:目录1 Word VBA参考教程:目录2
Word VBA参考教程:目录3 Word VBA参考教程:目录4
Word VBA参考教程:目录5 Word VBA参考教程:目录6
Word VBA参考教程:目录7 Word VBA参考教程:目录8
Word VBA参考教程:目录9 Word VBA参考教程:目录10
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号