【问题标题】:Storing xml within excel workbook在excel工作簿中存储xml
【发布时间】:2015-07-27 07:09:42
【问题描述】:

我在 .xml 文件中定义了一些数据。我需要创建一个 Excel 工作簿,该工作簿根据该文件中包含的信息提供一些功能。 XML 数据必须放在该 Excel 文件中 --- 即,它不能放在单独的文件中(因此之后您可以保留没有 .xml 的 .xlsx 文件)。

所以我想创建这样的东西:

sub Load()  'this function is called once, and after it was called the .xml file is no longer required'
  fName = "some path to data.xml"
  ActiveSheet.OLEObjects.Add(Filename:=fName) 
End Sub

'Does not open external .xml file'
Sub SomeFunction()
  Dim data As MSXML2.DOMDocument
  Set data = New MSXML2.DOMDocument
  data.Load(ActiveWorkbook.OLEObjects(1)) 'Load method can not be called like that'

  ' parse the data'

End Sub

我认为 .xml 文件应该作为 OLE 对象嵌入到 Excel 文件中。但是我找不到在嵌入后读取数据(作为字符串)表单文件的方法。

我知道使用 MSXML2 可以读取存储在外部文件中的 .xml(MSXML2.DOMDocument.Load 方法),以便对其进行解析。是否可以使用 MSXML2 对象打开嵌入式文档?或者是否有另一种方法可以在工作簿中存储外部 XML 结构?

【问题讨论】:

    标签: xml vba excel


    【解决方案1】:

    您可以使用 CustomXMLParts 对象执行此操作
    请参阅https://msdn.microsoft.com/en-us/library/office/ff863162.aspx
    或对象浏览器

    【讨论】:

    • 谢谢!这正是我所需要的,
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多