我在 LibreOffice 中有一个 *ods. 电子表格。有些字段包含货币格式(JPY)的数字,但它们也可能是一般数字格式。我想创建相应的字段,以欧元和美元显示金额,并自动进行转换(即无需我提供转换率,转换率会自动更新)。
这可能吗?如果可以,怎么做?
答案1
如果不使用插件,请尝试使用 api.fixer.io:
=LEFT(RIGHT(WEBSERVICE("http://api.fixer.io/latest?symbols=EUR,GBP"),9),7)
这将检索到类似这样的内容:
{"base":"EUR","date":"2017-08-17","rates":{"GBP":0.90895}}
并显示:
0.90895
相同的技术也适用于任何其他货币 URL。
Fixer.io - API 的重要变化(2018)
来源:修复者 - 重要公告
旧版 Fixer API(api.fixer.io)已弃用,并于 2018 年 6 月 1 日停止使用。重新设计的 API 可在以下位置获得:https://data.fixer.io/api/。API 的核心结构保持不变,但您需要对集成进行一些更改:
- 获取免费修复程序访问令牌fixer.io
- 替换 API URL 并添加访问密钥
旧版:'https://api.fixer.io/latest'
新版:'https://data.fixer.io/api/latest?access_key=YOUR_ACCESS_KEY'
答案2
2023-03-29:解决方案中的 API 来自文件和志美现在需要订阅 API 密钥。
汇率 API
如果你更喜欢无钥匙选项,那么文件和志美的解决方案,汇率 API仍然提供免费、无密钥选项。
* 看 “无钥匙选项的局限性” 末尾部分
以志美:
- 在第一个单元格中,例如
G13
,输入以下内容:
=WEBSERVICE("https://open.er-api.com/v6/latest/JPY")
- 在另一个单元格中,为了防止两次调用 API 端点,请输入以下内容:
=MID(G13,SEARCH("EUR", G13)+5, 8)
这将转换日元到欧元。
无钥匙选项的局限性
开放存取端点:开放/免费/专业之间的差异
- 请求速率受限
- 每小时仅允许 1 个请求
- 基于速率限制的 IP 阻止将在 20 分钟后过期
- 数据已过时
- 数据每24小时刷新一次
- 响应中包含下次更新的时间戳
- 归因
- 在页面中加入费率需要链接归因
答案3
可能有更好的方法,但这就是我正在使用的方法:
首先从网站导入数据:
插入 -> “链接到外部数据...” -> URL(例如https://forum.openoffice.org/en/forum/search.php?keywords=exchange+rates)
然后定义包含汇率的单元格:
选择单元格(例如日元汇率)插入->名称->定义......(例如 euro_to_jpy)
现在您可以在公式中使用:
=A2*euro_to_jpy
(更多内容请参见此处:https://forum.openoffice.org/en/forum/search.php?keywords=exchange+rates)
答案4
稍微概括一下医生的回答:
首先,将货币数据放入您选择的基础货币的单元格中(在此示例中,ILS 是基础货币):
=WEBSERVICE("https://api.exchangeratesapi.io/latest?base=ILS")
假设输出位于单元格I17。现在,可以通过以下方式获得外币与基础货币的比率(以英镑为例):
=MID(I17,SEARCH("GBP", $I$17)+5,9)
这里的 9 表示汇率使用的字符数(位数 + 小数点)。您可以根据需要使用更多或更少(数字是连接起来的,而不是四舍五入的),但不能超过 12。如果您不需要高精度,那么仅使用 4 个字符可能更安全,以防将来 API 发生变化。