Xếp hạng theo doanh thu giảm dần (1 người xem)

Người dùng đang xem chủ đề này

duynhat84

Thành viên chính thức
Tham gia
23/9/11
Bài viết
74
Được thích
3
em muốm không dùng Sort để sắp xếp doanh thu theo thứ tự giảm dần vì như thế cứ mỗi khi nhập thêm lại phải Sort lại mà muốm dùng hàm gì đó để tạo thành 1 bảng xếp hạng từ 1 bảng nhập liệu
các anh chi chỉ gùm với.
em xin cảm ơn.
em gửi File kèm theo
 

File đính kèm

em muốm không dùng Sort để sắp xếp doanh thu theo thứ tự giảm dần vì như thế cứ mỗi khi nhập thêm lại phải Sort lại mà muốm dùng hàm gì đó để tạo thành 1 bảng xếp hạng từ 1 bảng nhập liệu
các anh chi chỉ gùm với.
em xin cảm ơn.
em gửi File kèm theo
Cái này "dễ ec" nếu có dữ liệu thật, dữ liệu không thật làm xong "trớt quớt" mắc cỡ chết.
Híc!
 
Thầy Ba Tê, em cứ làm 1 File post lên rồi có gì bạn ấy tùy biến.
 

File đính kèm

Thầy Ba Tê, em cứ làm 1 File post lên rồi có gì bạn ấy tùy biến.
* Cột tên cửa hàng, không cần dài thế, chỉ cần =INDEX($C$3:$C$10,MATCH(G3,$D$3:$D$10,0),0) là đủ
* Lỡ doanh thu trùng nhau thì sao nhỉ?
VD: cửa hàng 2 và 4 có cùng doanh thu 2.000.000. Lúc này tên cửa hàng sẽ là cửa hàng 2 lặp lại 2 lần.
 
Nếu dùng cái này thì khi doanh thu = "" thì sẽ báo lỗi.

Thì bẫy lỗi IF(Doanhthu="","",...) thôi, chẳng cần kê tên cửa hàng làm chi.
Dù sao đi nữa, nghiên cứu thêm trường hợp doanh thu trùng, dù trong thực tế doanh số có thể lên đến 10 chữ số và đến hàng đơn vị cho chắc ăn.
Ặc...ặc...
 
Nếu sắp xếp thì sắp xếp hết chứ lại để trống hả anh? Còn doanh thu trùng thì thêm chút nữa
=INDEX($C$3:$C$10,MATCH(LARGE(IF($D$3:$D$10="",ROW(INDIRECT("1:"&ROWS($D$3:$D$10)))/99^99,$D$3:$D$10+ROW(INDIRECT("1:"&ROWS($D$3:$D$10))))/99^9,ROW(1:1)),IF($D$3:$D$10="",ROW(INDIRECT("1:"&ROWS($D$3:$D$10)))/99^99,$D$3:$D$10+ROW(INDIRECT("1:"&ROWS($D$3:$D$10))))/99^9,0))
 
Nếu sắp xếp thì sắp xếp hết chứ lại để trống hả anh? Còn doanh thu trùng thì thêm chút nữa
Sao không bẫy lỗi, để nó #NUM! thấy kỳ quá
Thử cái này xem còn bị vấn đề gì không:
=IF(ROW(A1)>COUNT($D$3:$D$10),"",INDEX($C$1:$C$10,(LARGE(($D$3:$D$10<>"")*(($D$3:$D$10)+(ROW($D$3:$D$10))/100),ROW(A1))-LARGE(($D$3:$D$10<>"")*($D$3:$D$10),ROW(A1)))*100))
Kéo xuống, chán thì nghỉ
Bi giờ già dzồi, nhìn công thức dài quá ....phát ngán
Thân
Híc
 
Sao không bẫy lỗi, để nó #NUM! thấy kỳ quá
Thử cái này xem còn bị vấn đề gì không:

Kéo xuống, chán thì nghỉ
Bi giờ già dzồi, nhìn công thức dài quá ....phát ngán
Thân
Híc
Cách của bác Cogia có 2 vấn đề
1 - Nếu doanh thu mà trùng nhau thì tên cửa hàng trùng nhau luôn
2 - Không hiển thị tên cửa hàng mà doanh thu = ""
 
Cách của bác Cogia có 2 vấn đề
1 - Nếu doanh thu mà trùng nhau thì tên cửa hàng trùng nhau luôn
2 - Không hiển thị tên cửa hàng mà doanh thu = ""
1- Bạn thử chưa vậy ???
2- Doanh thu không có mà còn .....đòi xếp hạng nữa sao Trời ( cái này còn tùy vào ý của chủ topic)
Híc
 
Cháu đã Test và đây là File minh chứng.
 

File đính kèm

Làm kiểu dốt.

Không ngủ được!
Để đỡ nhức đầu với các công thức mảng, thêm thí thí cho nó 1 cột phụ (F) cho đỡ buồn ngủ.
Híc!
 

File đính kèm

Không ngủ được!
Để đỡ nhức đầu với các công thức mảng, thêm thí thí cho nó 1 cột phụ (F) cho đỡ buồn ngủ.
Híc!

Nhớ không lầm thì dạng bài này đã làm từ đời nào rồi
Em làm như sau:
1> Tên của hàng:
Mã:
=LOOKUP(2,1/($D$3:$D$10+1/1000/[COLOR=#ff0000]ROW($1:$8)[/COLOR]=LARGE($D$3:$D$10+1/1000/[COLOR=#ff0000]ROW($1:$8)[/COLOR],ROWS($1:1))),$C$3:$C$10)
2> Doanh thu:
Mã:
=LOOKUP(2,1/($D$3:$D$10+1/1000/[COLOR=#ff0000]ROW($1:$8)[/COLOR]=LARGE($D$3:$D$10+1/1000/[COLOR=#ff0000]ROW($1:$8)[/COLOR],ROWS($1:1))),$D$3:$D$10)
Chổ màu đỏ có thể tùy biến lại cho phù hợp với dữ liệu. Tổng quát là ROW(INDIRECT("1:"&ROWS($D$3:$D$10)))
--------------
Ngoài ra, tổng quát hơn nữa ta hãy đặt name cho tên cửa hàng và doanh thu rồi viết lại công thức trên theo kiểu:
Mã:
=LOOKUP(2,1/(DT+1/1000/ROW(INDIRECT("1:"&ROWS(DT)))=LARGE(DT+1/1000/ROW(INDIRECT("1:"&ROWS(DT))),ROWS($1:1))),CH)
và:
Mã:
=LOOKUP(2,1/(DT+1/1000/ROW(INDIRECT("1:"&ROWS(DT)))=LARGE(DT+1/1000/ROW(INDIRECT("1:"&ROWS(DT))),ROWS($1:1))),DT)
vậy thôi!
Công thức thường, Enter bình thường
Ẹc... Ẹc....
-----------------
Nếu là em thì em dùng PivotTable cho "khỏe gà"
 
Lần chỉnh sửa cuối:
Cháu đã Test và đây là File minh chứng.
Hihi, "Xó zì", cái này mình cũng chưa hiểu sao Ec nó lại xử lý như thế
Đổi lại tí, thêm ROUND vào thử
=IF(ROW(A1)>COUNT($D$3:$D$10),"",INDEX($C$1:$C$10,ROUND((LARGE(($D$3:$D$10<>"")*(($D$3:$D$10)+(ROW($D$3:$D$10))/100),ROW(A1))-LARGE(($D$3:$D$10<>"")*($D$3:$D$10),ROW(A1)))*100,0)))
Híc, thật ra mình cũng biết công thức của Thầy Ndu, nhưng muốn thử một cách khác đó mà. Hihi, có "zì" mới "dzui" chứ luẩn quẩn, loay hoay mãi cũng ....chán
( Nhớ lúc trước thấy công thức lọc duy nhất của Bí -Bo và Bé Còi phải nói là mới & rất hay )
Còn bài này chủ topic nên nhờ Thầy Ptm hướng dẫn xử nó bằng Pivot cho "phẻ"
Híc
 

Bài viết mới nhất

Back
Top Bottom