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

如何在Google表格中按指定日期(含重复/非连续)获取每日货币汇率?

解决Google表格中获取指定日期(含重复/非连续)货币汇率的问题

我懂你现在的痛点——用时间序列模式的GOOGLEFINANCE公式时,它只会自顾自生成连续的日期序列,完全不管你B列里那些重复、断档的现金流日期,导致没法精准对应上每个日期的汇率。

其实换个思路就搞定了:针对每个单独的日期去查询汇率,而不是生成一段连续的时间序列。具体操作如下:

  • 替换原公式为单日期查询版本,针对B列的单个日期(比如B13),使用:

    =INDEX(GOOGLEFINANCE("CURRENCY:EURGBP", "price", B13), 2, 2)
    

    这个公式的逻辑是:GOOGLEFINANCE会返回一个2行2列的数组(第一行是表头,第二行是日期和对应价格),用INDEX提取第二行第二列的数值,就是该日期的精准汇率。

  • 适配重复/非连续日期:把这个公式直接下拉到B列所有日期对应的行,每个单元格都会独立查询对应日期的汇率,不管日期是否重复、是否断档,都能1:1匹配。

  • 优化异常情况:如果遇到周末、节假日这类没有汇率数据的日期,公式会返回#N/A,可以用IFERROR包装一下,让结果更友好:

    =IFERROR(INDEX(GOOGLEFINANCE("CURRENCY:EURGBP", "price", B13), 2, 2), "无当日数据")
    

几个额外的小提醒:

  • 确保B列的日期是标准日期格式(不是文本格式),否则GOOGLEFINANCE无法正确识别;
  • 这个方法的查询效率虽然比时间序列模式稍低,但胜在完全适配你的日期列表需求,不会出现遗漏或不匹配的情况;
  • 如果需要批量处理大量日期,也可以用数组公式一次性生成所有结果,比如:
    =ARRAYFORMULA(IF(B13:B="", "", IFERROR(INDEX(GOOGLEFINANCE("CURRENCY:EURGBP", "price", B13:B),,2), "无当日数据")))
    
    注意:数组公式模式下,部分版本的Google表格可能需要调整,若出现错误,还是用下拉单个公式的方式更稳妥。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 09:48:31