Tìm Top 3 Học Sinh Điểm Cao Mỗi Môn

Lấy danh sách học sinh đạt điểm cao nhất top 3 theo mỗi môn học. Trường hợp trùng thứ hạng sẽ ở cùng ô với nhau.
Bài trước mình đã giới thiệu bài tương tự, nhưng cách sắp xếp khác, bạn có thể xem lại (Link).

Link: Onedrive

Dữ liệu gồm có điểm các môn học theo học sinh. (Các vị trí 1, 2, 3 đã tô màu cho dễ nhìn)
Dữ liệu điểm thi


Tìm ra top 3 mỗi môn. Nếu cùng hạng, sẽ được nối tên cùng trong ô
Top 3 học sinh mỗi môn học. Trùng sẽ nằm cùng trong ô

Công thức:
1.=VSTACK(HSTACK("Rank",B1:H1),REDUCE({1;2;3},B2:H2,LAMBDA(x,y,LET(a,TAKE(y:H20,,1),f,LAMBDA(v,TEXTJOIN(CHAR(10),,FILTER(A2:A20,a=LARGE(UNIQUE(a),v)))),HSTACK(x,VSTACK(f(1),f(2),f(3)))))))

2.=LET(z,B2:H20,HSTACK({"Rank";1;2;3},VSTACK(B1:H1,MAKEARRAY(3,COLUMNS(z),LAMBDA(r,c,LET(s,INDEX(z,,c),TEXTJOIN("
",,FILTER(A2:A20,s=LARGE(UNIQUE(s),r)))))))))

3.=LET(a,A1:H20,b,DROP(TAKE(a,,1),1),c,DROP(TAKE(a,1),,1),d,DROP(DROP(a,1),,1),HSTACK({"Rank";1;2;3},VSTACK(c,MAKEARRAY(3,COUNTA(c),LAMBDA(r,s,LET(v,INDEX(d,,s),TEXTJOIN(CHAR(10),,FILTER(b,v=LARGE(UNIQUE(v),r)))))))))
Đăng nhận xét (0)
Mới hơn Cũ hơn