首页 > 解决方案 > 如何在 ImportXML 的 URL 中包含 Google 表格单元格引用

问题描述

我有这个 ImportXML 公式:

=IMPORTXML("https://www.x-rates.com/historical/?from=USD&amount=1&date=2018-04-01"; "//a[@href='http://www.x-rates.com/graph/?from=EUR&to=USD']")

我希望将参数“&date=”的值替换为单元格引用 (B1)。

我试过这个:

=IMPORTXML("https://www.x-rates.com/historical/?from=USD&amount=1&date="&B1"; "//a[@href='http://www.x-rates.com/graph/?from=EUR&to=USD']")

但是 Google Sheet 给了我一个错误。有什么见解吗?

标签: xmlgoogle-sheets

解决方案


我认为在"https://www.x-rates.com/historical/?from=USD&amount=1&date="&B1使用时,2018-04-01“B1”可能会转换为序列号。并请删除". &B1";那么这些修改呢?我认为您的情况有几个答案。因此,请将此视为其中之一。

=IMPORTXML("https://www.x-rates.com/historical/?from=USD&amount=1&date=" & TO_TEXT(B1) ; "//a[@href='http://www.x-rates.com/graph/?from=EUR&to=USD']")

或者

=IMPORTXML("https://www.x-rates.com/historical/?from=USD&amount=1&date=" & TEXT(B1,"yyyy-MM-dd") ; "//a[@href='http://www.x-rates.com/graph/?from=EUR&to=USD']")

参考 :

如果这不是你想要的,我很抱歉。

编辑 :

在您的问题中,=IMPORTXML("https://www.x-rates.com/historical/?from=USD&amount=1&date=2018-04-01"; "//a[@href='http://www.x-rates.com/graph/?from=EUR&to=USD']")返回相同的值,例如1.232118 1.232118. 所以这不是由于date=" & TO_TEXT(B1) ;. 认为这是由于xpath。我没有注意到这是您问题中的另一个问题。我真的很抱歉。所以我更新了xpath。

=IMPORTXML("https://www.x-rates.com/historical/?from=USD&amount=1&date= & TO_TEXT(B1) , "//tr[1]//a[@href='http://www.x-rates.com/graph/?from=EUR&to=USD']")

笔记 :

  • <td class='rtRates'><a href='http://www.x-rates.com/graph/?from=EUR&amp;to=USD'>URL中有2个。因此,在此修改中检索了第一个。当你想第二个请使用=IMPORTXML("https://www.x-rates.com/historical/?from=USD&amount=1&date= & TO_TEXT(B1) , "//tr[position()>1]//a[@href='http://www.x-rates.com/graph/?from=EUR&to=USD']")

如果我还没有注意到某些事情并且我误解了您的问题,我很抱歉。


推荐阅读