问题描述
在我的Google电子表格文档中,我有一个帐单表,其中的日期为J
列,金额为P
列。我想建立另一个表,按年(一排=一年)汇总这些账单。 P
列中的内容类似于"3245,20 EUR"
。
这是我尝试过的公式(在此示例中,S5
应该是总和,而R5
应该是特定年份的数值):
S5=SUMIF(YEAR($J$5:$J),R5,VALUE(REGEXEXTRACT($P$5:$P,"^([0-9]+,[0-9]{2}) EUR$")))
这不起作用。有什么办法吗?谢谢。
解决方法
您可以使用以下公式
=SUM(QUERY({A2:A,ArrayFormula(VALUE(REGEXEXTRACT(SUBSTITUTE(B2:B,","."),"^([0-9]+\.[0-9]{2}) EUR$")))},"select Col2 where year(Col1)="&A1&""))
我们必须使用SUBSTITUTE
的原因是因为看起来价格值来自不同的区域。
(请根据您的需要调整范围)
使用的功能: