Skip to content

xpath_XPath计算函数

函数名:xpath_XPath计算 / xpath_Evaluate

函数功能

执行XPath表达式计算,支持XML字符串或文件路径输入,能够返回数值、字符串、布尔值等多种类型结果,适用于Excel中对XML结构的数据提取与分析。

参数规范

参数名类型必填示例特殊说明
XML字符串或文件路径String"<root><data>123</data></root>""C:\\data.xml"可以是XML文本或本地文件路径
XPath表达式String"//data"支持标准XPath语法

使用案例

简单数值提取

问题描述:从XML中提取特定节点的数值
公式演示

excel
=xpath_XPath计算("<root><value>456</value></root>", "//value")

输出效果

text
456

布尔值判断

问题描述:判断XML中是否存在指定节点
公式演示

excel
=xpath_XPath计算("<root><flag>true</flag></root>", "boolean(//flag)")

输出效果

text
TRUE

文件路径输入

问题描述:使用本地XML文件进行XPath计算
公式演示

excel
=xpath_XPath计算("C:\\data.xml", "//user/@id")

输出效果(假设文件中存在<user id="1001">):

text
1001

技术说明

XML解析方式

  • 使用XmlDocument进行XML解析
  • 使用XPathNavigator.Evaluate()执行表达式计算

支持的XPath表达式类型

  • 数值表达式:如 count(//item)
  • 节点选择:如 //book[@id='1']
  • 布尔表达式:如 //stock[@price>100]

异常处理

错误场景返回值
XML格式错误#N/A
XPath表达式无效#N/A
文件无法读取#N/A
其他异常错误: <异常信息>

扩展应用

动态XPath构建

excel
=xpath_XPath计算(A1, CONCATENATE("//user[@id='", B1, "']"))

说明:根据单元格B1的值动态构建XPath表达式

与Excel表格结合使用

excel
=xpath_XPath计算("C:\users.xml", "//user[@id='1001']/name")

输出效果

text
张三

注:本函数在WPS 2019+和Excel 365中测试通过,支持本地XML文件与文本输入。