Bài trước mình có chia sẻ cách sắp xếp số từ nhỏ đến lớn (Link). Bài này mình sẽ chia sẻ cách sắp xếp từ lớn đến nhỏ và cả nhỏ đến lớn, điều thú vị là lại chỉ cần 1 công thức cho cả 2 cột.
Note: Những dạng bài xử lý dữ liệu luôn giúp bạn tư duy tốt và hỗ trợ nhiều cho việc xử lý tách chuỗi khi mà Office bạn dùng còn phiên bản thấp.
Link: Onedrive
![]() |
| Sắp xếp số từ lớn đến nhỏ và ngược lại |
Công thức:
1.C2:D17=MID(SUMPRODUCT(ABS(LARGE(MID($A2,ROW(INDIRECT("1:"&LEN($A2))),1)*-1^(B$1=$B$1),ROW(INDIRECT("1:"&LEN($A2)))))*10^-(LEN($A2)+1-ROW(INDIRECT("1:"&LEN($A2)))))&REPT(0,LEN($A2)),3,LEN($A2))
2.=TEXT(SUM(IFERROR(AGGREGATE(15-(A$1=$B$1),6,--MID($A2,ROW($1:$20),1),ROW($1:$20))*10^(ROW($1:$20)-1),)),REPT("0",LEN($A2)))
3.=TEXT(SUM(IFERROR(ABS(LARGE(IFERROR(MID($A2,ROW($1:$10),1)*-1^(A$1=$A$1),""),ROW($1:$10)))*10^(ROW($1:$10)-1),)),REPT("0",LEN($A2)))
4.=MID(SUM(IFERROR(ABS(LARGE(IFERROR(MID($A2,ROW($1:$10),1)*-1^(A$1=$A$1),""),ROW($1:$10)))*10^-(LEN($A2)+1-ROW($1:$10)),))&"000",3,LEN($A2))
5.=TEXT(LEFT(NPV(9,ABS(LARGE((0&MID($A2,ROW($1:$12),1))*-1^(A$1=$B$1),ROW($1:$12))))*10^12,LEN($A2)),REPT(0,LEN($A2)))
6.=LET(f,LAMBDA([r],MAP(A2:A17,LAMBDA(s,CONCAT(SORT(MID(s,ROW(1:20),1),,r))))),HSTACK(f(-1),f()))
