hỏi về công thức tìm kiếm

Liên hệ QC

vutrader

Thành viên mới
Tham gia
20/3/08
Bài viết
13
Được thích
3
Chào các bác,

Em có vấn đề này mong các bác giúp đỡ.
Em có file cần xếp hạng về điểm số nhưng không biết làm thế nào.
cụ thể là em có 3 cột số liệu số tt tên và điểm
khi có nhiều tên có cùng số điểm vi dụ a-50, b-50, c-40, d-50, e-30 thì vlookup không làm được. Cụ thể là nó chạy ra ccột tên a,a,a và cột điểm 50,50,50 trong khi em muốn sắp xếp là cột tên a,b,d va cột điểm tương ứng 50,50,50.

Các bác có cách nào làm như vậy được không chỉ em với.

Nói dài dòng quá hik, em gởi kèm cái file mong các bác giúp đõ.
 

File đính kèm

Với file bạn gởi, mình có thể dùng chức năng Advaced Filter với công thức lọc thế này:
=RANK(B2,$B$2:$B$11,0)<6
Còn việc lọc tên thì không hợp lí tí nào, chẳng lẻ 2 học sinh trùng tên nhau cùng học giỏi như nhau thì chỉ có 1 người được thưởng à? Bạn nên phân biệt dựa vào mã học sinh hay gì đó thay cho tên.
 
Lần chỉnh sửa cuối:

File đính kèm

Cho mình ly với.
To : Vutrader
Bạn có thiên vị không, nếu chỉ chỉ lấy 5 người mà có 6 người bằng điểm thì sao nhỉ--=0

Bạn làm rất hay. Bạn có thể diễn giải đôi chút để mình hiểu hơn về công thức này không? Cảm ơn rất nhiều.
 
Bạn làm rất hay. Bạn có thể diễn giải đôi chút để mình hiểu hơn về công thức này không? Cảm ơn rất nhiều.

Hàm trên dùng công thức mảng :
Bạn xem thêm về các bài về công thức mảng trên diễn đàn
Và đây là một ví dụ :
http://www.giaiphapexcel.com/forum/showthread.php?t=9384
Bạn xem những công thức có dấu {} ấy
Nếu có gì cần hỏi mình sẽ trả lời
Thân!
 
Thật ra bài toán này cũng có thể giãi bằng phương pháp khác, INDEX chẳng hạn...
Thuật toán là cộng mổi điểm với 1 số gia đủ nhỏ.. mục địch là làm cho các số trùng nhau có sai biệt nào đó... Có thể cộng thêm gia số =ROW/1000 chẳng hạn... khi ấy 2 người cùng điểm thì người nào xếp phía dưới (số dòng lớn) sẽ dc ưu tiên...
vân vân... Vô vàn cách!
Tuy nhiên bài toán này vẫn phải xét lại thật kỷ như bạn hoangdanh282vn vừa nói... Nếu có 3 người cùng điểm 50 và 3 người nữa cùng điểm 40 thì e rằng ta phải lấy 6 ngừoi mới là công bằng!
ANH TUẤN
 
Cám ơn các bác đã xem và góp ý. Cám ơn bác hoangdanh282vn đã cho công thức rất hay. Vấn đề thế này. Vì ngân sách có hạn nên chỉ chọn được 5 người tuy nhiên nói như các bác rất đúng làm em nhận ra vấn đề hihi.

Thật ra bài toán này cũng có thể giãi bằng phương pháp khác, INDEX chẳng hạn...
Thuật toán là cộng mổi điểm với 1 số gia đủ nhỏ.. mục địch là làm cho các số trùng nhau có sai biệt nào đó... Có thể cộng thêm gia số =ROW/1000 chẳng hạn... khi ấy 2 người cùng điểm thì người nào xếp phía dưới (số dòng lớn) sẽ dc ưu tiên...
vân vân... Vô vàn cách!
Tuy nhiên bài toán này vẫn phải xét lại thật kỷ như bạn hoangdanh282vn vừa nói... Nếu có 3 người cùng điểm 50 và 3 người nữa cùng điểm 40 thì e rằng ta phải lấy 6 ngừoi mới là công bằng!
ANH TUẤN

Bác anhtuan1066 có thể cho công thức cụ thể của index để áp dụng cho bài này được không bác. Cám ơn bác nhiều.
 
Bác anhtuan1066 có thể cho công thức cụ thể của index để áp dụng cho bài này được không bác. Cám ơn bác nhiều.
Index thì phải dùng thêm cột phụ, mà tớ thì chẳng thích dùng cột phụ tẹo nào, cách của hoangdanh282vn là ok rồi, tuy nhiên vẫn up lên các bạn tham khảo và góp ý bỏ cột phụ dùm nhé
 

File đính kèm

Ôi... cần gì cột phụ...
Đây này, tôi làm theo thuật toán tôi đã nói ở trên nhé... chả có cột phụ nào!
ANH TUẤN
 

File đính kèm

Ôi... cần gì cột phụ...
Đây này, tôi làm theo thuật toán tôi đã nói ở trên nhé... chả có cột phụ nào!
ANH TUẤN
Thậm chí cũng chẳng cần đến cái cột điểm đã sắp xếp làm tham chiếu, ngó lại bài mình thấy...chuối, Thanks
 
Chưa biết sử dụng hàm index hàm match.... đọc bài của 2 bác anhtuan va nhukhang em biết thêm được một số hàm. Cám ơn các bác nhiều nhé.
 
tra loi vutrader

sao bạn không dùng cách sort cho mau nhỉ?
có thể là từ a-z hay từ Z-a . Rồi từ đó bạn có thể lấy ra mấy người tùy ý .
 
Web KT

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

Back
Top Bottom