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

Google Sheets中GOOGLEFINANCE获取指定年份个股高低价出错求解

问题分析与修正方案

原公式错误原因

你的公式存在两个核心问题:

  • 日期区间逻辑错误:原公式用DATE(YEAR(TODAY())-A22,MONTH(TODAY()),DAY(TODAY()))作为起始日期,实际取的是「当前日期往前推A22年的当天」到「今天」的区间,而非完整的指定自然年份(比如2023年1月1日至12月31日),导致每次查询的区间都包含到当前的最新数据,所以MAX结果重复为当前阶段的最高价。
  • 未锁定完整年份范围:没有指定目标年份的全年首尾日期,无法获取该年份的完整交易数据。

修正后的公式

根据A22的含义分两种场景:

场景1:A22是具体年份(如2023、2022)

  • 年度最高价公式:
=MAX(INDEX(GOOGLEFINANCE($C$7, "price", DATE(A22, 1, 1), DATE(A22, 12, 31)), 0, 2))
  • 年度最低价公式:
=MIN(INDEX(GOOGLEFINANCE($C$7, "price", DATE(A22, 1, 1), DATE(A22, 12, 31)), 0, 2))

场景2:A22是「第N年」(如1代表去年,2代表前年)

  • 年度最高价公式:
=MAX(INDEX(GOOGLEFINANCE($C$7, "price", DATE(YEAR(TODAY())-A22, 1, 1), DATE(YEAR(TODAY())-A22, 12, 31)), 0, 2))
  • 年度最低价公式:
=MIN(INDEX(GOOGLEFINANCE($C$7, "price", DATE(YEAR(TODAY())-A22, 1, 1), DATE(YEAR(TODAY())-A22, 12, 31)), 0, 2))

额外提示

  • 确保C7单元格的股票代码格式正确(美股直接写代码如AAPL,港股需加前缀如HK:0700)
  • 若返回#N/A,可能是目标年份无交易数据或代码无效,可添加IFERROR处理:
=IFERROR(MAX(INDEX(GOOGLEFINANCE($C$7, "price", DATE(YEAR(TODAY())-A22, 1, 1), DATE(YEAR(TODAY())-A22, 12, 31)), 0, 2)), "无数据")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 12:05:05