有没有办法在 MS-Excel 中导入当前汇率并保持更新?Excel 提供了一种调用 URL 并将响应导入单元格的方法。
有几个教授。互联网上的服务,但我想确保没有记录任何数据并且提供的信息是最新的。而且应该是免费的...
有没有办法在 MS-Excel 中导入当前汇率并保持更新?Excel 提供了一种调用 URL 并将响应导入单元格的方法。
有几个教授。互联网上的服务,但我想确保没有记录任何数据并且提供的信息是最新的。而且应该是免费的...
这是一个无需编码的解决方案。您可以从 Yahoo Finances 下载 CSV 格式的数据并将其作为查询导入 Excel。
如何将 Yahoo Finances 中的数据导入 Excel?
转到数据 → 从 Web。
在字段中指定数据 URL URL
,例如美元兑欧元汇率:
http: //download.finance.yahoo.com/d/quotes.csv ?s=USDEUR=X&f=b
按加载。将自动创建具有所需数据的新工作表。
您可以通过分别取消选择Header Row和Banded Rows来隐藏单元格的标题和样式。
就是这样,现在您有了一个包含所需数据的单元格。您可以像引用 Excel 中的任何其他单元格一样引用该单元格。
很高兴知道:
您可以通过单击Data → Refresh All手动触发数据刷新。打开工作簿时自动更新:https: //support.office.com/en-US/article/Refresh-an-external-data-connection-in-Excel-2016-for-Windows-1524175f-777a-48fc -8fc7-c8514b984440
上例中的 URL 包含&f=b
片段,即出价。详细雅虎财经查询数据参数请见:http ://www.financialwisdomforum.org/gummy-stuff/Yahoo-data.htm
调用 URL http://genia.berlin/usd.php以获取与美元相比的实际汇率。精度为小数点后 4 位。错误调用返回空结果,没有错误消息。ISO 4217符号中给出的一个参数,例如: http ://genia.berlin/usd.php?eur
提供的信息不提供任何形式的保证!
可以在此处找到包含屏幕截图的分步解决方案:https ://eves.genia.berlin/excelquery_e.html
创建一个文本文件。名称可以自由选择。请确保 URL 后有一个空行。
WEB
1
http://genia.berlin/usd.php?["Currency","Enter currency code (ISO 4217)"]
Selection=EntirePage
Formatting=None
PreFormattedTextToColumns=True
ConsecutiveDelimitersAsOne=True
SingleBlockTextImport=False
DisableDateRecognition=False
DisableRedirections=True
启动 Excel 并显示以下菜单:Data / Get External Data / Run Saved Query ... 键入上一节中文本文件的位置和名称(例如 excelquery.txt)。查询被视为公式。分配的单元格可以存储在另一个工作表中。
在选择属性时,可以在打开 Excel 文档时设置不同的设置,例如自动更新。
可选择货币作为参数的三种可能方式。
在对话框中提示用户指定货币。他还可以确定该输入是否要在以后的同一文档的更新中再次使用。
下次调用 Excel 文件时会发出警告。数据检索的连接必须由用户确认。
这是在服务器端截取的代码(PHP):
<?php
if ($p= substr ($_SERVER['QUERY_STRING'], 0, 3)) {
$pu= strtoupper ($p);
if (preg_match ('/^(?:
BGN|CHF|CZK|DKK|EEK|EUR|GBP|HRK|HUF|ISK|LTL|LVL|MDL|MKD|NOK|PLN|RON|RSD|RUB|SEK|SKK|TRY|UAH|
BDT|BND|CNY|FJD|HKD|IDR|INR|JPY|KRW|LKR|MVR|MYR|NPR|PHP|PKR|SGD|THB|TWD|VND|IQD|
ANG|ARS|BOB|BRL|CAD|CLP|COP|CRC|DOP|HNL|KYD|MXN|NIO|PEN|PYG|SVC|TTD|UYU|VEF|
BWP|DZD|EGP|KES|MAD|MUR|NAD|NGN|PGK|SCR|SLL|TZS|UGX|XOF|ZAR|ZMK|
AED|AUD|BHD|ILS|JOD|KWD|KZT|LBP|NZD|OMR|QAR|SAR|TND|UZS|YER
)$/x', $pu)) {
$pl= strtolower ($p);
if ($x= simplexml_load_file ("http://xxxxx/$pl.xml", null, LIBXML_NOCDATA)) {
if (preg_match ("/(\d+)\.(\d+)\s*$pu/", (string) $x->channel->item->description, $currency)) {
header ('Content-type: text/plain');
header ('Cache-Control: no-cache, must-revalidate');
echo "$currency[1],$currency[2]"; //Excel braucht Komma statt Punkt
exit;
}
}
}
}
header ('HTTP/1.1 204 No Content', true, 204);