【发布时间】:2016-10-17 01:59:28
【问题描述】:
我正在尝试获取将一系列货币字符串转换为美元的公式,以便我有一些相同的货币。
目前我只针对欧元、英镑和美元进行此操作,但稍后我会将其扩展到更多货币。
我有一个目前能够执行以下操作的公式:
正常
-
->(空白到空白) -
Yes->Yes -
No->No -
Alt->Alt -
N/A->N/A
€
-
Yes €100->Yes $110 -
Yes €200 (Current)->Yes $219 (Current) -
Yes €300 NA->Yes $329 NA -
Yes €400 Next->Week Yes $439 Next Week -
Yes €500 5 RE->Yes $549 5 RE
英镑
-
Yes £100->Yes $122 -
Yes £200 (Current)->Yes $243 (Current) -
Yes £300 NA->Yes $365 NA -
Yes £400 Next Week->Yes $486 Next Week -
Yes £500 5 RE->Yes $608 5 RE
$(美元)
-
Yes $100->Yes $100 -
Yes $200 (Current)->Yes $200 (Current) -
Yes $300 NA->Yes $329 NA -
Yes $400 Next Week->Yes $400 Next Week -
Yes $500 5 RE->Yes $500 5 RE
问题:
但它无法处理以下问题:
-
Yes £600 - £700->Yes $730 - $851 -
Yes €600 - €700->Yes $658 - $768 -
Yes $600 - $700->Yes $600 - $700
目前,€ EUR 版本和£ GBP 行只会转换第一个值,我需要它将两个值都转换为 USD。
-
Yes £600 - £700->Yes $729 - £700(注意输出中的第一种货币为 $,输出中的第二种货币为 £) -
Yes €600 - €700->Yes $658 - €700(注意输出中的第一种货币为 $,输出中的第二种货币为 €)
当前公式:
=ArrayFormula(
IF(NOT(ISBLANK(A2)),
IF(IFERROR(SEARCH("$",A2),0),A2,IF(A2="N/A","N/A",IF(A2="No","No",
IF(A2="Unknown","Unknown",IF(A2="Yes","Yes",
SUBSTITUTE(
A2,
REGEXEXTRACT(A2, "[\£|\€]\d+"),
TEXT(
REGEXEXTRACT(A2, "[\£|\€](\d+)")
*
VLOOKUP(
REGEXEXTRACT(A2, "([\£|\€])\d+"),
{
{"£";"€"},
{GoogleFinance("CURRENCY:GBPUSD");GoogleFinance("CURRENCY:EURUSD")}
},
2,0),
"$###,###"
)
)
)))))
,"")
)
【问题讨论】:
-
这个问题没有显示任何关于特定问题的研究工作,无论如何,我发布并回答了一些可以给你一些方向的建议。
-
我的浏览器历史显示不然,我浏览了谷歌的电子表格函数列表并查看了每一个函数,我用谷歌搜索了很多东西,我搜索了堆栈溢出。您的建议确实有帮助,我目前正在寻找通过谷歌应用脚本来代替
-
我没有说你没有研究,我说问题没有显示。网站指南 (How to Ask) 要求跟踪研究工作,我认为包括摘要甚至亮点就足够了。
标签: regex google-sheets formulas array-formulas