这是从雅虎财经提取股息信息的功能。
=importdata("http://real-chart.finance.yahoo.com/table.csv?s=T&a=1&b=1&c=2010&d="&
month(today())&"&e="&DAY(today())&"&f="&year(today())&"&g=v&ignore=.csv")
这返回...
A B
Date Dividends
42648 0.48
42557 0.48
42466 0.48
42375 0.48
42284 0.47
42193 0.47
42102 0.47
42011 0.47
41920 0.46
41828 0.46
41737 0.46
41647 0.46
41555 0.45
41463 0.45
41372 0.45
41282 0.45
41187 0.44
41096 0.44
41004 0.44
40914 0.44
40821 0.43
40730 0.43
40639 0.43
40549 0.43
40457 0.42
40366 0.42
40275 0.42
我要做的是按每笔交易的年份分组。我找到了一种解决方法来实现这一点。
=QUERY( A:B,
"Select year(A) , sum(B) Where A is not null Group by year(A) Label year(A) 'Year',
sum(B) 'Total'" , 1)
*结果
Year Total
2010 70.530003
2011 85.077798
2012 85.877801
2013 99.133401
2014 90.649999
2015 87.259999
2016 104.349998
虽然如果我手动将 A 列的单元格格式更改为日期格式,这很有效,但我想将它变成一个函数。更多类似的东西。
=query(importdata("http://real-chart.finance.yahoo.com/table.csv?s=T&a=00&b=3&c=2000&d="&
month(today())&"&e="&DAY(today())&"&f="&year(today())&"&g=v&ignore=.csv"),
"Select year(Col1) , sum(Col2) Where Col1 is not null Group by year(Col1)
Label year(Col1) 'Year', sum(Col2) 'Total'")
这个函数给我一个错误信息说
无法对不是 Date 或 DateTime 列的列执行函数 year
我想这是因为 Col1 是整数,而不是日期格式。
任何解决方法可以使这项工作?