能否用Excel的RTD函数获取谷歌财经等公开股票行情数据?
能否用Excel RTD函数从谷歌财经、雅虎财经获取股票数据?
先说结论:不行,谷歌财经、雅虎财经并没有官方提供适配Excel RTD功能的服务器组件——你尝试的google.rtd或yahoo.rtd这类RTD ProgID根本不存在,这就是你得到#N/A错误的核心原因。
Excel的RTD函数本质上依赖第三方开发者提供的COM服务器组件,每个组件对应唯一的ProgID(比如嘉信ThinkOrSwim的tos.rtd就是他们专门开发的组件ID)。谷歌和雅虎从未公开过这类适配Excel的RTD组件,自然没法直接用这种方式调用。
如果需要从这些平台获取股票数据,可以试试这些替代方案:
- 用Excel内置的
WEBSERVICE+FILTERXML函数:抓取公开财经网站的页面数据,再通过文本解析提取需要的报价。比如(仅作演示,页面结构变动后可能失效):
之后用=WEBSERVICE("https://finance.yahoo.com/quote/AAPL")FILTERXML或MID、FIND这类文本函数剥离出bid、ask这类数据。 - 用Power Query抓取数据:这是Excel自带的工具,稳定性比函数高。操作路径是「数据」选项卡→「获取数据」→「自网页」→输入财经页面URL,加载后可以可视化整理数据,还能设置定时自动刷新。
- 第三方Excel插件:有些插件会封装财经数据接口,提供类似RTD的实时刷新功能,但这类插件大多需要付费或有使用限制,选的时候要注意数据来源的合法性。
内容的提问来源于stack exchange,提问作者Shawn V. Wilson
相关产品推荐
相关产品推荐

