Applies ToMicrosoft 365 专属 Excel Excel 2021 Excel 2019 Excel 2016 Excel 2013

FILTERXML 函数使用指定的 xpath 从 XML 内容返回特定数据。

  • FILTERXML 函数在 Excel 网页版 和 Excel for Mac 中不可用。

  • 此函数可能显示在 Excel for Mac 的函数库中,但它依赖于 Windows 操作系统的功能,因此不会在 Mac 上返回结果。

语法

FILTERXML(xml, xpath)

FILTERXML 函数语法具有下列参数。

参数

说明

xml   

必需​​

有效 XML 格式的字符串

Xpath   

必需

采用标准 XPath 格式的字符串

  • 如果 xml 无效,FILTERXML 将返回 #VALUE! 。

  • 如果 xml 包含的命名空间的前缀无效,FILTERXML 将返回 #VALUE! 错误值。

示例

  1. 此示例对单元格 B2 中返回的 XML 数据使用 FILTERXML 函数,该函数由单元格 B1 中 WebSERVICE 函数对 Web 查询的结果提供。

    FILTERXML 函数的示例

    FILTERXML 中的数据在单元格 B3:B5 和 C3:C5 中返回,并显示维基百科上最近更新的三个查询结果,以及其更新时间 (UTC、“协调世界时”) 。

    单元格 B3:B5 包含公式 =FILTERXML (B3,“//rc/@title”) 。

    单元格 C3:C5 包含公式 =FILTERXML (B3,“//rc/@timestamp”) 。

    如果你有当前版本的 Microsoft 365,则只需在输出区域的左上角单元格中输入公式,然后单击 ENTER 以确认公式为动态数组公式即可。 否则,必须首先选择输出区域,在输出区域的左上角单元格中输入公式(公式必须作为遗留的数组公式进行输入),然后按 Ctrl+Shift+Enter 进行确认。 Excel 将使用括号将公式括起来。 有关数组公式的详细信息,请参阅数组公式指南和示例

  2. 还可以将 FILTERXML 与 ENCODEURLWEBSERVICE 函数结合使用。 例如,可以使用 markitondemand.com API 服务返回有关公司股票的信息:

    =WEBSERVICE (“http://dev.markitondemand.com/MODApis/Api/Quote/xml?symbol=”&ENCODEURL (C2) )

    单元格 C2 中有股票股票代码的位置。

    然后,可以使用 FILTERXML 函数提取有关该库存的特定数据。 例如,若要获取单元格 C2 中股票股票代码的“最后价格”,可以使用:

    =FILTERXML (WEBSERVICE (“http://dev.markitondemand.com/MODApis/Api/Quote/xml?symbol=”&ENCODEURL (C2) ) ,“//QuoteApiModel/Data/LastPrice”)

需要更多帮助吗?

可随时在 Excel 技术社区中咨询专家或在社区中获取支持。

另请参阅

ENCODEURL 函数

WEBSERVICE 函数

需要更多帮助?

需要更多选项?

了解订阅权益、浏览培训课程、了解如何保护设备等。

社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。