Word 2007 VBA:ActiveDocument.CustomXMLParts

gra*_*ace 2 vba ms-word

本教程CustomXMLParts(以及许多其他教程)中,对象收集方法中有一个整数Load,我找不到解释。Word 2007 VBA Reference 似乎Load也没有列出该方法:

  ''# Load CustomerData.xml file
  ActiveDocument.CustomXMLParts.Add
  ActiveDocument.CustomXMLParts(4).Load ("c:\CustomerData.xml") 
Run Code Online (Sandbox Code Playgroud)

4代表什么?

Tod*_*ain 5

每个 .docx 中始终包含三个内置 CustomXMLPart(由 Word 2007/2010 创建 - 不一定是由 Open XML SDK 创建的 .docx)。即:

<cp:coreProperties xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:cp="http://schemas.openxmlformats.org/package/2006/metadata/core-properties"><dc:creator></dc:creator><cp:keywords/><dc:description/><dc:subject/><dc:title/><cp:category/><cp:contentStatus/></cp:coreProperties>

<Properties xmlns="http://schemas.openxmlformats.org/officeDocument/2006/extended-properties"><Company/><Manager/></Properties>

<CoverPageProperties xmlns="http://schemas.microsoft.com/office/2006/coverPageProps"><PublishDate/><Abstract/><CompanyAddress/><CompanyPhone/><CompanyFax/><CompanyEmail/></CoverPageProperties>
Run Code Online (Sandbox Code Playgroud)

所以4这里的意思是,在添加第四个之后ActiveDocument.CustomXMLParts.Add“获取第四个”。如果您有更多,您只需使用下一个可用的索引号。相反4,我可能会用这个来代替:

Dim ap As Document
Set ap = ActiveDocument
ap.CustomXMLParts.Add
ap.CustomXMLParts(ap.CustomXMLParts.Count).Load ("C:\CustomerData.xml")
Run Code Online (Sandbox Code Playgroud)