Google sheets 在Google Sheets中,是否有一种方法可以将每年最后一个月的值输出到一个跨越多年的月度数据表中?

Google sheets 在Google Sheets中,是否有一种方法可以将每年最后一个月的值输出到一个跨越多年的月度数据表中?,google-sheets,array-formulas,google-sheets-formula,google-sheets-query,gs-vlookup,Google Sheets,Array Formulas,Google Sheets Formula,Google Sheets Query,Gs Vlookup,我有一个原始财务数据表,告诉我在给定的月末账户的价值是多少(以日期格式MM/1/YY表示,以规范化)。此表中有多年的数据,因此我可能有类似的内容(请忽略确切值,它们只是占位符): 我想使用这些数据创建一个数组(或者理想情况下是一个轴),这样它将总结给定年份(包括部分年份)的最后一个值 因此,对于上述情况,它将输出: 12/1/18 $12 4/1/19 $123 或者更好…清理格式,将其更改为全年: 2018 $12 2019 $123 当我尝试透视原始数据时,“summary By”选项似

我有一个原始财务数据表,告诉我在给定的月末账户的价值是多少(以日期格式
MM/1/YY
表示,以规范化)。此表中有多年的数据,因此我可能有类似的内容(请忽略确切值,它们只是占位符):

我想使用这些数据创建一个数组(或者理想情况下是一个轴),这样它将总结给定年份(包括部分年份)的最后一个值

因此,对于上述情况,它将输出:

12/1/18 $12
4/1/19 $123
或者更好…清理格式,将其更改为全年:

2018 $12
2019 $123
当我尝试透视原始数据时,“summary By”选项似乎都不会产生所需的输出


原始数据表的长度预计会随着时间的推移而增长,因此理想的解决方案将保持最新,而无需手动更新。因此,当表格增长到2020年时,它只会将该年最近一个月的值添加到输出的末尾。

在谷歌表格中,您可以使用选项2(忽略重复项)使用Sortn按年份排序:

(2) 筛选出空白单元格:

filter({year(A:A),A:B},A:A<>"")
filter({year(A:A),A:B},A:A“”)

(3) 按日期降序排序:

sort(filter({year(A:A),A:B},A:A<>""),2,false)
sort(过滤器({year(A:A),A:B},A:A“”),2,false)

(4) 按年份升序排序,但删除除每年第一个(最近的)日期以外的所有日期:

=sortn(sort(filter({year(A:A),A:B},A:A<>""),2,false),999,2,1,true)
=sortn(排序(过滤器({year(A:A),A:B},A:A“”),2,false),999,2,1,true)


我很难理解这是怎么回事。你能帮我把它分解一下吗?好的,这会增加我的答案。这是有效的,但我很难理解这是怎么回事。你能帮我解释一下吗?当然。。。这是一个简单的
VLOOKUP
,其中在第一个参数中,我们在一列中使用唯一的年份(
indirect
,因为空白单元格也将被视为1890年)。然后,第二个
vlookup
参数是查询,我们将输出控制为年,而不是DTE,因此
year(Col1)
query
排序
输入只是一种安全措施,如果您希望在月份中有更多的日期或在同一日期有更多的金额。。。确保你总是能得到最新的信息
filter({year(A:A),A:B},A:A<>"")
sort(filter({year(A:A),A:B},A:A<>""),2,false)
=sortn(sort(filter({year(A:A),A:B},A:A<>""),2,false),999,2,1,true)
=ARRAYFORMULA(IFERROR(VLOOKUP(UNIQUE(YEAR(INDIRECT("A1:A"&COUNTA(A1:A)))), 
 QUERY(SORT({A1:A,B1:B}, 1,0,2,0), "select year(Col1),Col2"), {1,2}, 0)))