我正在努力使用 Excel 中的公式来根据日期显示多个工作表中的行总数。这是一个例子
表1
天数:今天 - 2
Name ¦ Total
Abc ¦ 6
Def ¦ 8
第2页
Name ¦ 15/03/2024 ¦ 16/03/2024 ¦ 17/03/2024
Abc ¦ 7 ¦ 3 ¦ 8
Def ¦ 4 ¦ 1 ¦ 2
第3 - 53页(日期每次增加1天,每张7天)
Name ¦ 18/03/2024 ¦ 19/03/2024 ¦ 20/03/2024
Abc ¦ 1 ¦ 2 ¦ 3
Def ¦ 5 ¦ 0 ¦ 3
所以我基本上需要日期小于今天的所有工作表的总和 – 2
我希望这是有道理的。
我看不到按日期过滤结果的方法
如果您愿意将数据放入一张纸中,我认为您可以使用
FILTER
和 BYROW
:
假设以下数据在A1:G3:
姓名 | 2024 年 3 月 15 日 | 2024年3月16日 | 2024年3月17日 | 2024年3月18日 | 2024年3月19日 | 2024年3月20日 |
---|---|---|---|---|---|---|
ABC | 7 | 3 | 8 | 1 | 2 | 3 |
防御 | 4 | 1 | 2 | 5 | 0 | 3 |
下面的公式应该会给你想要的结果:
=BYROW(FILTER(B2:G3,(B1:G1>=DATE(2024,3,18))*(B1:G1<=DATE(2024,3,20)),""),LAMBDA(x,SUM(x)))
这是公式分解:
FILTER()
过滤掉日期 >= 2024-03-18 的列,并且 <= 2024-03-20.=FILTER(B2:G3,(B1:G1>=DATE(2024,3,18))*(B1:G1<=DATE(2024,3,20)),"")
2.
BYROW()
按行对筛选出的列进行求和。
=BYROW(filteredData,LAMBDA(x,SUM(x)))
如果绝对有必要将数据保存在单独的工作表中,您可以考虑使用
INDIRECT
和 HSTACK
将不同工作表中的数据合并到一张表中,如下所示:
=HSTACK(INDIRECT("Sheet1!A1:G3"), INDIRECT("Sheet2!A1:G3"))