You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google Sheets中获取NSE股票开盘收盘价?解决Google Finance数据错误

问题描述
  • 在Google Sheets中尝试用公式获取指定股票(如RELIANCE.NS)的开盘/收盘价时出现异常:
    • 原使用公式:=INDEX(GOOGLEFINANCE(B2, "open", A2), 2, 2),返回错误提示:

      Error When evaluating GOOGLEFINANCE, the query for the symbol: 'RELIANCE.NS' returned no data.
      或直接显示#N/A

    • 后续尝试的IMPORTXML公式均未生效:
      • =IMPORTXML("https://www.investing.com/equities/reliance-industries-historical-data", "//table[@id='curr_table']/tbody/tr[1]/td[2]")
      • =INDEX(IMPORTXML("https://www.moneycontrol.com/financials/relianceindustriesindianagrasp/opening-priceRI", "//div[@class='value_txtfl fl gL_10 uc']/span[1]"),1)
可行解决方案

修复GOOGLEFINANCE公式

  1. 校准日期格式:A2单元格的日期必须是Google Sheets可识别的标准格式(如YYYY-MM-DD),避免使用文本格式的日期字符串。
  2. 确认股票代码:确保B2中填写的代码为RELIANCE.NS(后缀.NS对应印度NSE交易所,大小写不影响,但后缀不可省略)。
  3. 分步调试公式:先单独执行=GOOGLEFINANCE("RELIANCE.NS", "open", DATE(2024,5,20))测试数据源是否正常,确认返回数组后,再嵌套INDEX(...,2,2)提取数值。

调整IMPORTXML/IMPORTHTML公式

部分网站会动态加载数据或更新HTML结构,导致原XPATH失效,可尝试以下适配方案:

  • Investing.com替代方案:改用IMPORTHTML抓取表格数据,稳定性更高:
    =INDEX(IMPORTHTML("https://www.investing.com/equities/reliance-industries-historical-data", "table", 1),2,2)
    注:table,1定位页面第一个表格,2,2提取表头后第一行的第二列(对应开盘价)。
  • Moneycontrol适配方案:重新定位页面元素的XPATH,例如:
    =INDEX(IMPORTXML("https://www.moneycontrol.com/financials/relianceindustries/opening-priceRI", "//span[@class='inp_val']"),1)
    注:需通过浏览器开发者工具确认当前页面开盘价元素的最新属性,调整XPATH匹配规则。

额外注意事项

  • Google Sheets的外部数据函数存在调用频率限制,短时间内大量刷新可能触发临时限制。
  • 部分网站会拦截Google Sheets的爬虫请求,导致IMPORT类函数失效,此时优先使用GOOGLEFINANCE(官方对接的数据源稳定性更强)。

内容的提问来源于stack exchange,提问作者ni9khil

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 14:42:07