根据日期序列和类别对值求和

问题描述 投票:0回答:1

这是关于进行每周的流动性计算,根据类别列出每项费用的成本,后跟一系列日期。

我之前问过一个问题; 根据 Google 表格中同一行的值从多列中获取信息

那是同一份文件,但只有名称,没有费用类别。之后决定应根据类别进行求和,以便仅获得流动性计算所需的信息。

我已经设法编辑@rockinfreakshow给我的公式来满足我的所有目的,但现在我坚持这个。

日期所在的结构是相同的,只是现在添加了类别列:

A 栏 B 栏 A 栏 B 栏
类别1 费用1 金额 日期->
类别 2 费用2 金额 日期->

流动性视图的结构保持不变,选项卡顶部具有日期&周&月&年,第一列包含要求和的类别:

A 栏 日期 <- + 7 days <- + 7 days
类别1 总和 总和 总和
类别 2 总和 总和 总和

之前建议的公式

=map(A5:index(A:A,match(,0/(A:A\<\>""))),lambda(Σ,if(Σ="",,index(if(ifna(xmatch(B4:4,xlookup(torow(xlookup(Σ,'Recurring Costs'!A:A,'Recurring Costs'!C:ZZ),1),4:4,4:4,,-1))),vlookup(Σ,'Recurring Costs'!A:B,2,),)))))

我尝试用

vlookup
替换
filter
,但这会汇总该类别的所有费用,并根据该类别的第一个日期序列放置它们,而且我还没有成功地尝试指定过滤器中的所需值。我尝试了许多不同的编辑和公式,但到目前为止还没有成功。

这是示例表,包括之前的问题和答案:

https://docs.google.com/spreadsheets/d/18sX800vqc4YsijSvzEfOf27M16uUkrD9bibYIvFrIew/edit?usp=sharing

google-sheets google-sheets-formula
1个回答
0
投票

您可以尝试:

=map(A14:A16,lambda(Σ,map(B4:4,lambda(Λ,if(Λ="",,let(Ξ,sum(ifna(filter('Recurring Costs'!C2:C7,'Recurring Costs'!A2:A7=Σ,let(Δ,xlookup('Recurring Costs'!D2:H7,4:4,4:4,,-1),byrow(Δ,lambda(Γ,ifna(xmatch(Λ,Γ)))))))),if(Ξ=0,,Ξ)))))))

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.