分组汇总树状结构表

分组汇总树状结构表

有一个树状结构的Excel表,Epic列是最高层。

1 Code Epic Stories Task Hour
2 1 E1


3 1.1
St1

4 1.1.1

Ts1 10
5 1.1.2

Ts2 20
6 1.2
St2

7 1.2.1

Ts21 5
8 1.2.3

Ts22 2
9 2 E2


10 2.1


0

现在要按最高层Epic分组,对Hour列汇总,同时保留Code列。


G H I
1 Code Epic Hours
2 1 E1 37
3 2 E2 0

使用 SPL XLL

=spl("=E(?1).group@i(Epic!=null).new(Code,Epic,ifn(~.sum(Hour),0):Hours)",A1:E10)

Picture1png

函数 group@i 用于条件分组,~ 表示当前组,函数 new 新建表格,ifn 返回第一个非 null 的成员(当前组汇总结果为 null 时可返回 0)。

来源:https://stackoverflow.com/questions/78157345/how-to-create-excel-pivot-table-from-a-table-with-hierarchical-columns