谷歌表格获取股票Float流通股数公式无返回值问题求助
谷歌表格获取雅虎财经流通股数(Float)修复方案
原公式失效核心原因
- 雅虎财经关键统计页面URL结构已更新,旧
/q/ks路径已废弃 - 页面表格结构迭代,原索引指向的位置已不是流通股数字段
- 旧公式存在路径拼接空格的语法错误,会导致请求无效
可用公式
硬编码股票代码版本
直接查询BEKB.BR的流通股数:=INDEX(IMPORTHTML("https://finance.yahoo.com/quote/BEKB.BR/key-statistics?p=BEKB.BR","table",3),9,2)
动态引用单元格版本
A27单元格存储股票代码,自动匹配查询:=INDEX(IMPORTHTML("https://finance.yahoo.com/quote/"&$A$27&"/key-statistics?p="&$A$27,"table",3),9,2)
可选:转换为可计算数值
上述公式返回的是带单位的文本(如36.45M),如果需要转为纯数值可使用如下公式:
=LET( float_text, INDEX(IMPORTHTML("https://finance.yahoo.com/quote/"&$A$27&"/key-statistics?p="&$A$27,"table",3),9,2), base_num, VALUE(LEFT(float_text, LEN(float_text)-1)), unit, RIGHT(float_text, 1), SWITCH(unit, "M", base_num*10^6, "B", base_num*10^9, "K", base_num*10^3, base_num) )
注意事项
- 雅虎财经页面结构可能不定期调整,若后续抓取失效可调整表格索引,或改用
IMPORTXML配合XPath定位字段,稳定性更高 - 需确保谷歌表格运行环境可正常访问雅虎财经页面,否则会返回抓取错误
内容的提问来源于stack exchange,提问作者Emiel
相关产品推荐
相关产品推荐

