Excel还能访问网页数据?这3个函数让你玩转API和结构化数据

yumo6666个月前 (05-21)技术文章40

你还以为 Excel 只能做表格汇总?
其实 Excel 自带的几个隐藏函数,能做到:

  • 实时拉取天气、汇率、新闻等Web API 数据
  • 动态拼接带参数的 URL 请求
  • 解析 XML 格式数据,提取出标签内容!

今天就带你掌握 Excel 中最具“编程味道”的 3 个函数——WEBSERVICE、ENCODEURL、FILTERXML,让你解锁表格里的“轻量爬虫能力”!


1. WEBSERVICE 函数 —— 实时获取网页或API返回内容

作用:从指定 URL 中提取文本(支持 HTTP 请求)

语法:
=WEBSERVICE("https://api.exchangerate-api.com/v4/latest/USD")
 返回值:通常是 JSON 或 XML 字符串(需进一步解析)

应用举例

  • 实时获取汇率、天气、币价
  • 获取公司 API 返回的接口内容
  • 与本地 Web 服务对接传入参数

注意:Excel 桌面端支持良好,但 Excel Online 或某些版本中该函数不可用或受限。


2. ENCODEURL 函数 —— 将中文、特殊字符转为URL编码格式

作用:避免在拼接 URL 时出错(如空格、中文)

语法:
=ENCODEURL("苹果手机") → 返回 %E8%8B%B9%E6%9E%9C%E6%89%8B%E6%9C%BA

典型用途

  • 拼接 GET 请求参数,如:
    ="https://api.xxx.com/search?q=" & ENCODEURL(A1)
  • 构建动态 API 地址或抓取链接

3. FILTERXML 函数 —— 解析 XML 内容,提取标签字段

作用:从 XML 字符串中提取指定节点的数据(支持 XPath)

语法:
=FILTERXML(xml_text, xpath_path)

应用举例

假设 XML 如下:

<weather>
  <city>Beijing</city>
  <temp>24</temp>
</weather>
公式:=FILTERXML(A1, "//temp") → 返回 24

通常搭配 WEBSERVICE 使用,例如:

=FILTERXML(
  WEBSERVICE("https://example.com/weather.xml"),
  "//city"
)

推荐组合方式

目标

函数组合

动态访问网页API

ENCODEURL + WEBSERVICE

处理XML格式返回

WEBSERVICE + FILTERXML

多语言搜索/关键词请求拼接

="...search?q=" & ENCODEURL(A1)

本地服务数据提取

WEBSERVICE("http://localhost/api?data=" & A1)


注意事项:

  • WEBSERVICE 不能处理 JSON(需通过 Power Query 或脚本)
  • FILTERXML 只能处理有效的 XML 结构,返回多个结果时需用数组公式
  • 这些函数对系统安全有要求,某些公司电脑或 Excel Online 版本不支持!

总结:你还在复制粘贴网页数据?这些函数让你“表格即网络接口”

应用场景:

  • 数据爬取(轻量)
  • 自动化报告刷新(如天气、币值)
  • 内部数据系统对接
  • 学习 XPath 与 API 调用结构

你以前有尝试过 WEBSERVICE 吗?
有没有哪一次你希望 Excel 直接拉网页数据?
欢迎留言交流~觉得有用请点赞 + 收藏,也可以转发给做数据集成、自动化办公的朋友!

相关文章

不支持自动溢出,函数FILTER仍然好用,无论Excel还是WPS

之前两篇关于函数的FILTER的文章备受关注,说明这个函数确实能给大家的工作带来便利。点击查看第一篇点击查看第二篇同时也有不少吐槽,在没有溢出功能的WPS中其效果大打折扣。没有自动溢出,我们就来手动溢...

PART23: 还有人不会filter函数?都去学,真的香!

公式解析FILTER:筛选区域或数组=FILTER(数据源,条件)用法解析1:正向查找返回陈志轩的相关信息:=FILTER(B1:E8,A1:A8=H1)仅需要在G4中输入上述公式,结果返回G4:J4...

Excel多条件筛选别硬扛!FILTER函数3秒搞定N个关键字

今天咱们要攻克一个让无数据人头疼的难题:如何同时筛选包含多个关键字的记录?前几期教了单关键字筛选的妙法,但后台被追问:"归如果要同时筛选A组、B组、F组怎么办?"别急,这就送上升级版解...

Filter函数的三种用法,比用VLOOKUP一对多查询,更加灵活方便

文章最后有彩蛋!好礼相送!Excel秘籍大全,正文开始FILTER 函数可以基于定义的条件筛选一系列数据。在没有filter函数之前,如果实现一对多查询,常见的是构建辅助列,然后使用VLOOKUP+R...

跳过VLOOKUP天坑!FILTER函数10个招式让同事以为你开了外挂?

还在为VLOOKUP的"一对多"限制头疼?是否还在为INDEX+MATCH的嵌套抓狂?今天教你用Excel新晋顶流——FILTER函数,10个高能用法让你秒变数据操控大师!用法1:精准...

Excel新函数FIlter最全16个公式,可直接套用,效率翻倍,速收

销售数量大于50的记录=FILTER(A2:F10,D2:D10>50)筛选销售部的数据=FILTER(A2:F10,C2:C10="销售部")筛选出特定日期的数据=FILTER...