Skip to content

xpath_查询函数

函数名:wb_xpath查询 / xpath_Query

函数功能

执行XPath查询并返回所有匹配结果,支持从XML字符串或文件路径中提取节点值、节点文本或节点XML内容,适用于多值查询与结构化数据提取。

参数规范

参数名类型必填示例特殊说明
xmlInputString"C:/data.xml""<root><item>数据</item></root>"支持文件路径或XML字符串
xpathExpressionString"/root/item"支持标准XPath表达式
returnTypeInt11=节点值,2=节点文本,3=节点XML

使用案例

XML结构数据提取

问题描述:从XML中提取所有<item>节点的值
公式演示

excel
=xpath_Query("<root><item>数据1</item><item>数据2</item></root>", "/root/item", 1)

输出效果

text
数据1  
数据2

从文件路径读取数据并提取节点文本

问题描述:读取XML文件并提取<title>节点的文本内容
公式演示

excel
=xpath_Query("C:/example.xml", "/book/title", 2)

输出效果(假设XML文件内容为<book><title>Excel函数大全</title></book>):

text
Excel函数大全

技术说明

XPath返回类型说明

类型说明示例输出
1节点值(Value)节点内容
2节点文本(InnerXml)<content>节点内容</content>
3节点XML(OuterXml)<item>节点内容</item>

异常处理

错误场景返回值
XML内容为空或无效#N/A
XPath表达式无效错误: XPath表达式无效...
文件路径不存在错误: 无法加载XML文件...

扩展应用

结合VLOOKUP提取特定数据

excel
=INDEX(xpath_Query("C:/data.xml", "//product[@id='1001']", 3), 1, 1)

说明:从XML文件中提取ID为"1001"的产品完整节点内容。

动态XPath查询

excel
=xpath_Query(A1, B1, 1)

说明:A1中为XML内容,B1中为XPath表达式,实现动态数据提取。

注:本函数在WPS 2019+和Excel 365中测试通过