我正在尝试创建一个谷歌表单,显示几个固定时间内的各种加密货币价格(但暂时只使用BTC-USD(。表格将显示
BTCUSD Current Price, Previous Close, Close 5 days ago and Close 31 days ago
我尝试了以下操作,但遇到了所描述的问题,这些问题似乎是为加密货币保留的。
有多种方法可以获得当前价格:=GOOGLEFINANCE("BTCUSD")
会起作用-所以我们对当前价格是可以的=GOOGLEFINANCE("BTCUSD","change")
不会起作用,但它对股权有效=GOOGLEFINANCE("AAPL","change")
将工作
类似地=index(IMPORTHTML(CONCATENATE("https://finance.yahoo.com/quote/","AAPL"),"table",1),1,2)
将从表1第1行第2列返回,来自苹果的雅虎财务页面(股权(然而=index(IMPORTHTML(CONCATENATE("https://finance.yahoo.com/quote/","BTC-USD"),"table",1),1,2)
即使页面和表格布局看起来是相同的,也不起作用
我还注意到CCD_ 6将返回该日期范围的比特币价格,然而=GOOGLEFINANCE("BTCUSD", "price", DATE(a1), DATE(a2), "DAILY")
即使单元a1和a2中有2022,1,1和2022,8,15的复制和粘贴,也不会工作。
我怀疑第二个问题与公式中的日期不在引号中这一事实有关,但是,如果您从单元格excel中引用它们,可能会无意中将它们放入引号中,从而导致问题。最后一个问题使我们很难从不同的角度解决问题,即随着日期的变化引用单元格,并且我们刷新工作表,即我们无法引用总是5天前或31天前的单元格。
回答您的第一个问题
对于第一个公式=index(IMPORTHTML(CONCATENATE("https://finance.yahoo.com/quote/","AAPL"),"table",1),1,2)
,它工作了一会儿,然后停止了工作。然后我测试了=index(IMPORTHTML(CONCATENATE("https://finance.yahoo.com/quote/","BTC-USD"),"table",1),1,2)
,但没有成功,我甚至尝试了=IMPORTHTML("https://finance.yahoo.com/quote/BTC-USD","table")
,看看它是否在导入表,但你会得到同样的错误";url处的资源未找到";。
我做了一些研究,雅虎似乎对他们的网站进行了一些更改,这影响了他们的一些网页。建议使用另一个可以通过IMPORT
功能刮取的网站。这只是雅虎财经和IMPORT
功能的一个例子,还有其他社区也提到了对雅虎财经进行网络抓取的问题。
回答您的第二个问题
根据文件:,此公式存在问题=GOOGLEFINANCE("BTCUSD", "price", DATE(a1), DATE(a2), "DAILY")
DATE的输入必须是数字-如果提供了字符串或对包含字符串的单元格的引用,则#VALUE!将返回错误。
正确的方法是:DATE(2022,1,1)
,如果您想引用一个单元格,则必须将2022,1,1
拆分为三个不同的单元格,并以这种方式引用DATE(A2,B2,C2)
。