In Excel, group & summarize data by header row without adding a helper column

There are multiple Excel worksheets that have same structure but different number of rows. The 2nd row is the header row, and the last row is the summary row. The data layout is vertical. Here are the four tables:


A B C D
1 Name Entered Calls Accepted Calls Accept %
2 Team Leader A
3 Agent 1 100 50 50%
4 Agent 2 100 60 60%
5 Agent 3 100 70 70%
6 Agent 4 100 80 80%
7 Agent 5 100 90 90%
8 Totals 500 350 70%
9 Name Entered Calls Accepted Calls Accept %
10 Team Leader B
11 Agent 6 101 50 50%
12 Agent 7 100 60 60%
13 Agent 8 100 70 70%
14 Agent 9 100 80 80%
15 Agent 10 100 90 90%
16 Totals 501 350 70%
17 Name Entered Calls Accepted Calls Accept %
18 Team Leader C
19 Agent 11 102 50 50%
20 Agent 12 100 60 60%
21 Agent 13 100 70 70%
22 Agent 14 100 80 80%
23 Agent 15 100 90 90%
24 Totals 502 350 70%
25 Name Entered Calls Accepted Calls Accept %
26 Team Leader D
27 Agent 16 104 50 50%
28 Agent 17 100 60 60%
29 Agent 18 100 70 70%
30 Agent 19 100 80 80%
31 Agent 20 100 90 90%
32 Totals 504 350 70%

Group and summarize data by the header row without adding a helper column, and make the last row the total row:


A B C D
1
Entered Calls Accepted Calls Accept %
2 Team Leader A 500 350 0.7
3 Team Leader B 501 350 0.7
4 Team Leader C 502 350 0.7
5 Team Leader D 504 350 0.7
6 Totals 2007 1400 0.7

Use SPL XLL to enter the following formula:

=spl("=d=?.group@i(~(1)==""Name"").(t=~.m(-1),~(2)(1)|t.m(2:)), d| [[""Totals"",d.sum(~(2)),d.sum(~(3)),d.avg(~(4))]]",A1:D32)

Picture2png

The group@i function generates new groups whenever the specified condition is met; ~ represents the current group, and ~.m(-1) represents the last member/row. The code in rear is for aggregation and can be replaced by an Excel formula.

Source: https://stackoverflow.com/questions/78415314/sumifs-rows-based-on-header