Tự động lọc top ten khi Danh sách đã được thay đổi ?

  • Thread starter Thread starter hoarong
  • Ngày gửi Ngày gửi
Liên hệ QC

hoarong

Thành viên mới
Tham gia
27/5/08
Bài viết
8
Được thích
0
Trời , post nhầm tới 2 lần , mà tôi không biết xóa bài ở chỗ nào ? :=\+
 
Lần chỉnh sửa cuối:
Tôi phải lọc top 3 khách hàng theo các tiêu chí từ trên xuống hoặc từ dưới lên của 1 cột trong một danh sách , nói chung dữ liệu rất nhiều , ở đây tôi rút ngắn dữ liệu lại , mong các bạn giúp dùm cách (tôi cũng ko rành Macro , nếu có dùng macro xin các bạn chỉ dùm cặn kẽ tôi phải làm gì), danh sách rút gọn như sau :

Tôi có 2 sheet , 1 sheet danh sách dữ liệu(DANH_SACH) , 1 sheet chứa danh sách các top 3 (TOP_3)(top 3 từ trên xuống của Số Lần Giao Dịch và top 3 từ dưới lên của Số Nợ

Top 3 thì tôi không biết cách nào làm ở sheet khác , mà tự động cập nhật lại khi danh sách bên sheet DANH_SACH được thêm , sửa hoặc xóa bớt , nhất là chèn thêm dòng vào ở giữa .Vì không biết cách gì , nên tôi làm thế này :
- Top 3 từ trên xuống của Số lần Giao dịch :
Trong sheet TOP_3 , tôi làm như sau :

+ Mỗi ô của TOP_3 = Các ô của DANH_SACH , ví dụ : A1='DANH_SACH'!A1, rồi kéo ngang , kéo xuống , cho thật dư dã (phòng khi trường hợp bên kia thêm dòng mới vào ), y chang 1 danh sách bên kia .
+--> Data-->Filter-->Auto Filter --> Top 3 --> Ra 1 danh sách rất đúng .
+ Khi tôi thêm dòng mới bên DANH_SACH (trong range tôi đã kéo bên TOP_3) , nó không tự động lọc cho tôi , Tôi phải nhấp vào mũi tên lọc --> Top 3 --> Đúng
+ Nhưng khi tôi chèn thêm dòng ở giữa bên DANH_SACH , thì lọc ra ko đúng nữa , nó ko hiểu dòng mới thêm vào (mặc dù tất nhiên vẫn nằm trong range của TOP_3)
_ Top 3 từ dưới lên của Số Nợ tôi cũng ko biết làm .

Nhờ các bạn chỉ giúp,,,làm thế nào tự động lọc , khi tôi cập nhật dữ liệu bên DANH_SACH , vì tôi phải làm rất nhiều cái Top như vậy cho từng Cột bên sheet TOP_3 (phải làm riêng từng chỉ tiêu của mỗi cột )
Tôi gửi kèm file

Xin cảm ơn nhiều
 

File đính kèm

Bạn thêm 1 cột trong Sh Top_3 và nhập ct sau
E2=IF(RANK($C2,$C$2:$C$100)>3,"",RANK($C2,$C$2:$C$100))
Copy xuống
Khi chọn top3 theo nợ nhiều nhất thì bạn chọn NonBlank từ AutoFilter
 

File đính kèm

nhờ BQT xóa bài gửi này của mình. ...................
 
Lần chỉnh sửa cuối:
Mặc dù không hiểu hàm rank làm sao , nhưng mà , khi mình thêm 1 dòng bên dưới DANH_SACH , thì làm như bạn ra top 3 đúng (nhưng cũng ko tự động lọc được , mà phải lọc lại theo Nonblank)
Nhưng mà , khi mình chen thêm dòng ở giữa danh sách , thì top 3 vẫn lọc không ra cái dòng đó (mình cho dữ liệu lớn 1 cho dể lọc rồi) , chủ yếu là phần chen thêm ở giữa
cám ơn bạn nhiều
Còn phần lọc từ top 3 từ dưới lên , thì làm sao nữa ?
 
Ko biết tôi làm vầy có đúng ý bạn ko? Xem file nhé!
Tôi chưa hiểu ý bạn ở chổ Top 3 từ dưới lên và từ trên xuống nghĩa là sao? Trong file tôi lọc ra 2 bảng: 1 bảng 3 người giao dịch nhiều nhất và 1 bảng 3 người nợ nhiều nhất!
Bảng lọc này sẽ tự cập nhật khi bạn thêm tên vào danh sách! Thử xem!
Có gì ko đúng thì ý kiến nhé!
ANH TUẤN
 

File đính kèm

Hic , em cứ post nhằm 2 bài như nhau , nhưng kiếm nút delete xóa bớt 1 bài trùng ,mà kiếm hoài ko ra nút xóa ở đâu , anh chị nào biết chỉ giùm em .
 
Lần chỉnh sửa cuối:
Cám ơn anhtuan1066
File excel của anh , đúng là ý em muốn làm như thế , nó tự động lọc ra top 3, nhưng mà có điều này , khi em nhập trùng kí tự , ví dụ B , thì nó ra top 3 sai hết , top 3 ko trùng B , mà là trùng C,,hay kí tự nào đó , lạ lắm . Sau đó em xóa dòng có kí tự trùng đi , thì nó ko hiện đúng lại (mà vẫn hiện cái sai )
Top 3 từ dưới lên là lấy ba số nhỏ nhất , em có minh họa trong file excel đính kèm , anh giúp dùm .
Với lại , cho em hỏi, công thức anh sử dụng :
B3 : =INDEX(DS,MATCH(LARGE(SXGD,$A3),SXGD,0),COLUMN(A:A ))
B4 : =INDEX(DS,MATCH(LARGE(SXGD,$A3),SXGD,0),COLUMN(A:A ))
.....
Anh có thể giải thích cho em biến (hay bảng,hay range,...) DS và SXGD anh định nghĩa ở đâu , anh lấy ở đâu , làm các nào .
Anh có thể chỉ em cách làm cụ thể , cũng như ý nghĩa từng cái trong công thức trên của anh không . Vì file excel này chỉ là cách làm , còn dữ liệu thực lên đến 1000 dòng , và gần 50 cột . Em muốn hiểu cách làm ,để ứng dụng vô file thực bên em .
Cám ơn anh nhiều |||||

Hic , em kiếm ra trong Insert --> Name --> Define , nhưng anh định nghĩa em chưa hiểu được , định nghĩa thế này là sao anh ?Sao có chia cho 1.000.000 trong đó nữa ?
KH : =OFFSET(DANH_SACH!$B$2,,,COUNTA(DANH_SACH!$B$2:$B$20001),)
DS : =OFFSET(KH,,,,3)
SXGD : =OFFSET(KH,,2)+ROW(OFFSET(KH,,2))/1000000
------------------------------------------------------------
Hic , lại phát sinh thêm 1 cái nữa , đó là khi em chèn thêm 1 cột vào , thì nó lấy dữ liệu của cột này thành cột khác , bị sai , trường hợp thêm cột thì xử lý như thế nào nữa ?

Anh chị nào biết chỉ dùm em
Cám ơn nhiều !
 

File đính kèm

Lần chỉnh sửa cuối:
Web KT

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

Back
Top Bottom