3

是否存在任何允许我在 VBA 中使用 XPath 2.0 的 VBA 库?MSXML6 不适用于 XPath 2.0。

基本上,我想使用 XPath 2.0 解析 XML 文档,因为它允许我使用 XPath 表达式中的函数来过滤 XML 文档。例如,函数 current-date() 的使用将很有用,因为我将能够检索大于某个日期的数据。如果我使用 XPath 1.0,我需要通过 XPath 返回的日期进行任意循环,并比较哪些日期大于某个日期。

您对如何在 Excel 2003 VBA 中使用 XPath 2.0 或解决我的问题有任何想法吗?

提前感谢您的帮助。

唐纳德

4

4 回答 4

3

请原谅我对 XPath2 的东西一无所知。

您不能使用来自 VB 的日期值来使用 XPath 标准吗?
我的意思是,“/Date > 9/9/2009” - 其中 9/9/2009 是当前日期,它来自 VB。

如果我不明白这个问题,请告诉我。

于 2009-09-09T16:36:47.543 回答
3

,没有 XPath 2.0 的 Microsoft 实现(据我所知)。

于 2009-09-09T17:52:55.313 回答
1

虽然 Dimitre 的答案仍然完全有效,但不幸的是(另请参阅此线程),如果您可以将 .NET 库与您的 VBA 应用程序一起使用,您可以考虑使用Saxon for .NET,这是 Java Saxon 到 .NET 的直接 IKVM 端口.

于 2010-01-18T11:43:12.270 回答
0

Altova 提供其 XSLT 和 XPath 2.0 以及 XQuery 1.0 处理器作为 Windows 的下载,请参阅http://www.altova.com/altovaxml.html。它是一个可以编写脚本/自动化的 COM 应用程序,因此您应该能够将它与 VBA 一起使用,文档中有一个示例。我认为没有使用纯 XPath 2.0 的 API,但有使用 XQuery 1.0 的 API,而 XPath 2.0 是 XQuery 1.0 的子集。

于 2010-01-31T16:54:06.777 回答