从 GoogleFinance 获取特定日期的汇率

Get exchange rate on a specific date from GoogleFinance

我无法在特定日期停止 googlefinance 功能以使用 "that" 特定汇率将货币从英镑转换为欧元。

这是我的公式:=Finance!B4*GOOGLEFINANCE("CURRENCY:GBPEUR","price",date(2017,15,11))

这是错误:When evaluating GOOGLEFINANCE, the query for the symbol: 'CURRENCY:GBPEUR' returned no data.

我查看了有关 SO 的其他解决方案,但 none 有用。我实际上已经将 "date""price" 添加到其他解决方案的公式中。像这样:- Solution 1

首先,date(2017,15,11) 表示一年中第 15 个月的第 11 天,因此您需要调换月份和日期。

其次,历史数据查询,如

=GOOGLEFINANCE("CURRENCY:GBPEUR", "price", date(2017,11,15))

return 包含列和 headers 的 table。

Date                Close
11/15/2017 23:58:00 1.1163

从你使用这个公式的方式来看,我看你只是想要汇率。将函数包装在 index(..., 2, 2) 中以获得第二行中的第二个单元格。

=index(GOOGLEFINANCE("CURRENCY:GBPEUR", "price", date(2017,11,15)), 2, 2)

您的问题是(曾经)您试图强制使用不存在的第 15 个月的数据。 DATE 的语法是:

=DATE(YEAR(), MONTH(), DAY())

所以完整的公式应该是:

=Finance!B4*INDEX(GOOGLEFINANCE("CURRENCY:GBPEUR", "price", DATE(2017, 11, 15)), 2, 2)

备选方案是:

=Finance!B4*INDEX(GOOGLEFINANCE("CURRENCY:GBPEUR", "price", "15/11/2014"), 2, 2)

=Finance!B4*INDEX(GOOGLEFINANCE("CURRENCY:GBPEUR", "price", DATEVALUE("15/11/2014")), 2, 2)

=Finance!B4*INDEX(GOOGLEFINANCE("CURRENCY:GBPEUR", "price", A1), 2, 2)

其中 A1 包含有效日期

这是我对这个公式的版本。

其中 B3 应该是有效日期。

=index(GOOGLEFINANCE("CURRENCY:USDCNY", "price", B3), 2, 2)

PS。 我不确定为什么,但是当我指定 15-Dec-2018 时,公式显示错误。 所有其他日期都是正确的。

2018 年 12 月 15 日是星期日 - 因此出现错误。您可以添加 -2 或 +2,因为该错误也会在星期六弹出。我更喜欢 -2

:D 没有任何作用。无论我从一个单元格中插入或处理什么日期,无论我声明什么货币对,我从一个单元格中插入或处理什么价格,有或没有索引 → 它返回“分析错误”。我喜欢这种情况。

只是为了确保它是已知的,今天的 Google 表格中没有使用 , 运算符,因此避免解析器错误的正确表达式是(在您的情况下):

=index(GOOGLEFINANCE("CURRENCY:GBPEUR"; "price"; date(2017;11;15)); 2; 2)

在 Google 表格中,我是这样做的,使用分号:

=index(googlefinance("currency:USDNOK";"price";G11);2;2)

G11 是我的包含日期的单元格。它似乎为我完成了工作。我在 G11 中使用今天的日期对其进行了测试,并得到了与今天货币汇率的简化版本相同的结果:

=googlefinance("currency:USDNOK")