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! 错误值。
示例
-
此示例对单元格 B2 中返回的 XML 数据使用 FILTERXML 函数,该函数由单元格 B1 中 Web 查询上的 WEBSERVICE 函数的结果提供。
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 将使用括号将公式括起来。 有关数组公式的详细信息,请参阅数组公式指南和示例。
-
还可以将 FILTERXML 与 ENCODEURL 和 WEBSERVICE 函数结合使用。 例如,可以使用 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 技术社区中咨询专家或在社区中获取支持。