Đăng ký học Excel và VBA cùng GPE tháng 11 - TPHCM

Mua sách "VBA trong Excel - Cải thiện và tăng tốc" tái bản

Tìm top 4 trong các cột

Thảo luận trong 'Hàm và công thức Excel' bắt đầu bởi van luong, 3 Tháng tám 2011.

  1. van luong

    van luong Thành viên mới

    Mình có bảng dữ liệu ghi sản lượng sản phẩm của từng người làm được trong mỗi ngày.
    Trong mỗi ngày đó mình muốn tìm ra 4 người có sản lượng cao nhất, để xếp thứ hạng 1,2,3,4.
    Mình đã dùng hàm LOOKUP kết hợp với hàm LARGE nhưng không được. Vi nếu trong 1 ngày 2 người làm nhiều nhất có số sảm phẩm bằng nhau, thì nó chỉ trọn 1 người đứng trước đặt vào 2 vị trí số 1 và số 2. Như trong file mình gừi kèm thì ngày 1/8 nó trọn Ng văn B đặt vào cả 4 thứ hạng. Mình phải làm sao đây? Mong các bạn giiúp đỡ.
    Xin cảm ơn!
     

    Các file đính kèm:

  2. huuthang_bd

    huuthang_bd Thay thái độ đổi cuộc đời

    Bạn dùng công thức mảng này cho ô C16:
    Mã:
    =INDEX($B:$B,ROUND((1-MOD(LARGE(C$5:C$14-ROW(C$5:C$14)/10^6,ROW(1:1)),1))*10^6,0))
     
  3. phihndhsp

    phihndhsp Thành viên gắn bó

    C16=IF(ROWS($1:1)<=COUNT(data),OFFSET($A$1,SMALL(data,ROWS($1:1))-1,1),"")
    data là cái tên được định nghĩa như sau
    data =IF(RANK(Sheet1!C$5:C$14,Sheet1!C$5:C$14)<=4,ROW(Sheet1!C$5:C$14),"")
     
    Lần chỉnh sửa cuối: 3 Tháng tám 2011
  4. ndu96081631

    ndu96081631 Ăn cùng GPE, Ở cùng GPE, Sống cùng GPE Staff Member Super Moderator

    Bài này dùng PivotTable là ngon nhất (dùng chức năng Sort and top 10)

    [video=youtube;5UN_YK1U_lI]http://www.youtube.com/watch?v=5UN_YK1U_lI[/video]
     
    Lần chỉnh sửa cuối: 3 Tháng tám 2011
  5. van luong

    van luong Thành viên mới

    Cảm ơn tất cả các bạn!
    Mình làm như các bạn được rồi.
    Thuật toán của bạn huuthang_bd mình thấy rất hay.
     
  6. lethuycaylua

    lethuycaylua Thành viên chính thức

    Chào thầy, thầy giải thích giúp em sao lại phải dùng con số 1 10^6 mà không phải là con số khác cảm ơn thầy
     
  7. cheap_solution

    cheap_solution Thành viên mới

    Nếu dùng Pivot thì sẽ bị dính trường hợp chỉ lấy top 3. Không lấy theo ngày được.
     
  8. VetMini

    VetMini Thành viên gạo cội

    Nếu chỉ đòi hỏi đơn giản như vầy mà pivot không được thì do thiết kế kém hiệu quả. Cần thiết kế lại bảng trước khi tiếp tục công việc.
     
  9. tuansk2008

    tuansk2008 Thành viên mới

    Dear
    anh!!
    e đang cần sử dụng công thức của anh, nhưng khi làm theo thì không thấy chạy!!
    mặc dù em cũng đã đặt ở ô C16 trong file bạn trên đính kèm nhưng cũng không được. anh có thể giải thích kỹ hơn giúp em được không ạ
    thanks anh!
     
  10. camlam06

    camlam06 Thành viên mới

    ctrl+shift rồi enter nha bạn
     

Chia sẻ trang này