Kết hợp hàm choose, match,max???

Liên hệ QC

nguyenquoc1609

Thành viên mới
Tham gia
16/5/12
Bài viết
11
Được thích
1
Mọi người ơi giúp dùm em câu này. Em sắp thi tin học A.
Đề yêu cầu kết hợp hàm choose,match,max để tìm môn thi cao nhât trong các môn. Giúp dùm em. Em cám ơn rất nhiều!
 

File đính kèm

Tại ô J17 và K17, dùng các công thức tương ứng sau:
[J17] = CHOOSE(MATCH(MAX(F17:H17),F17:H17,0),$F$16,$G$16,$H$16)
[K17] = IF(AND(MIN(F17:H17)>0,I17>=VLOOKUP(C17,$C$4:$H$12, 2 + MATCH(E17,$E$3:$H$3,0),0)),"TT","")
Lưu ý trong công thức sau có cộng thêm 2 để xác định đúng cột cần thấy giá trị trả về
 
Tại ô J17 và K17, dùng các công thức tương ứng sau:
....
[K17] = IF(AND(MIN(F17:H17)>0,I17>=VLOOKUP(C17,$C$4:$H$12, 2 + MATCH(E17,$E$3:$H$3,0),0)),"TT","")
Lưu ý trong công thức sau có cộng thêm 2 để xác định đúng cột cần thấy giá trị trả về
Sửa lại tý tẹo, khỏi cộng 2 cho đỡ mệt mà cũng chẳng chết thằng Tây nào
=IF(AND(MIN(F17:H17)>0,I17>=VLOOKUP(C17,$C$4:$H$12, MATCH(E17,$C$3:$H$3,0),0)),"TT","")
Híc
 
Em cám ơn mọi người rất nhiều. Cho em hỏi thêm 1 vấn đề nữa, đó là em có thể thay đổi vị trí khi dùng hàm thì có được ko. Vd em ko dùng hàm choose, match, max mà làm match, choose,max... thì có đúng ko ạ.
 
Em cám ơn mọi người rất nhiều. Cho em hỏi thêm 1 vấn đề nữa, đó là em có thể thay đổi vị trí khi dùng hàm thì có được ko. Vd em ko dùng hàm choose, match, max mà làm match, choose,max... thì có đúng ko ạ.

Có cái được cái không - nói như bác ConCoGia là "hên - xui" --=0
 

File đính kèm

Lần chỉnh sửa cuối:
Tại ô J17 và K17, dùng các công thức tương ứng sau:
[J17] = CHOOSE(MATCH(MAX(F17:H17),F17:H17,0),$F$16,$G$16,$H$16)
[K17] = IF(AND(MIN(F17:H17)>0,I17>=VLOOKUP(C17,$C$4:$H$12, 2 + MATCH(E17,$E$3:$H$3,0),0)),"TT","")
Lưu ý trong công thức sau có cộng thêm 2 để xác định đúng cột cần thấy giá trị trả về
Xin cho hỏi vì sao tại J17 phải dùng hàm choose kết hợp với match & max, sao nếu chỉ dùng hàm choose & max (J17 = CHOOSE(MAX(F17:H17),$F$16,$G$16,$H$16)) thì không được vậy? Cám ơn đã trả lời :)
 
Xin cho hỏi vì sao tại J17 phải dùng hàm choose kết hợp với match & max, sao nếu chỉ dùng hàm choose & max (J17 = CHOOSE(MAX(F17:H17),$F$16,$G$16,$H$16)) thì không được vậy? Cám ơn đã trả lời :)
Học hàm là phải học cấu trúc của hàm .
Ví dụ có 3 hàm A,B,C được lồng với nhau theo A(B(C())).Thì đầu tiên bạn kiểm tra hàm C() trước,sau đó tới B(C()) và cuối cùng là A(B(C())).
Bạn kiểm tra thử [J17] = MATCH(MAX(F17:H17),F17:H17,0) là sẽ có câu trả lời ngay
 
Học hàm là phải học cấu trúc của hàm .
Ví dụ có 3 hàm A,B,C được lồng với nhau theo A(B(C())).Thì đầu tiên bạn kiểm tra hàm C() trước,sau đó tới B(C()) và cuối cùng là A(B(C())).
Bạn kiểm tra thử [J17] = MATCH(MAX(F17:H17),F17:H17,0) là sẽ có câu trả lời ngay

Chào bạn, cám ơn sự hồi âm của bạn. Thiệt ra là mình mới mày mò tự học excel khoảng nửa tháng nay nên có nhiều điều chưa hiểu rõ lắm, mình trình bày cách mình hiểu về excel & các bạn sửa dùm mình nếu mình có điểm sai nghen. Thanks các bạn nhiều lắm :)

Trong phần trả lời ở trước thì câu trả lời chính xác là dùng hàm Chose(Match(Max)))

Bây giờ mình trình bày từng hàm theo cách hiểu của mình nghen.

Theo mình được biết thì hàm max() là tìm giá trị cao nhất trong số các giá trị. Chẳng hạn có 3 môn ở dòng 17 – Mon 1 =7, Mon 2 = 8 , Mon 3 = 5 → J17 = max(7,8,5) = 8.

Hàm Match() tìm số thứ tự của 1 giá trị cho trước trong 1 danh sách các giá trị. Điểm số của 3 môn ở dòng 17 rồi, đã biết vị trí của 3 môn là ở dòng 17, vậy vì sao phải tìm số thứ tự của 3 môn?

Hàm Choose(Thứ Tự, giá trị 1, giá trị 2…) là hàm tìm kiếm 1 giá trị trong danh sách các giá trị, giá trị đó được xác định theo đối số Thứ Tự, vì vậy nếu muốn kiếm điểm cao nhất trong 3 môn thì mình nghĩ chỉ cần kết hợp hàm Choose & hàm Max và hàm Max chính là đối số Thứ Tự của hàm Choose?

→ J17 = Choose(Max(7,8,5),7,8,5) = #VALUE

Xin các bạn giải thích dùm mình là mình sai ở chỗ nào dùm mình nghen. Thanks các bạn rất nhiều:)
Đa tạ, đa tạ :)
 
Chào bạn, cám ơn sự hồi âm của bạn. Thiệt ra là mình mới mày mò tự học excel khoảng nửa tháng nay nên có nhiều điều chưa hiểu rõ lắm, mình trình bày cách mình hiểu về excel & các bạn sửa dùm mình nếu mình có điểm sai nghen. Thanks các bạn nhiều lắm :)

Trong phần trả lời ở trước thì câu trả lời chính xác là dùng hàm Chose(Match(Max)))

Bây giờ mình trình bày từng hàm theo cách hiểu của mình nghen.

Theo mình được biết thì hàm max() là tìm giá trị cao nhất trong số các giá trị. Chẳng hạn có 3 môn ở dòng 17 – Mon 1 =7, Mon 2 = 8 , Mon 3 = 5 → J17 = max(7,8,5) = 8.

Hàm Match() tìm số thứ tự của 1 giá trị cho trước trong 1 danh sách các giá trị. Điểm số của 3 môn ở dòng 17 rồi, đã biết vị trí của 3 môn là ở dòng 17, vậy vì sao phải tìm số thứ tự của 3 môn?

Hàm Choose(Thứ Tự, giá trị 1, giá trị 2…) là hàm tìm kiếm 1 giá trị trong danh sách các giá trị, giá trị đó được xác định theo đối số Thứ Tự, vì vậy nếu muốn kiếm điểm cao nhất trong 3 môn thì mình nghĩ chỉ cần kết hợp hàm Choose & hàm Max và hàm Max chính là đối số Thứ Tự của hàm Choose?

→ J17 = Choose(Max(7,8,5),7,8,5) = #VALUE

Xin các bạn giải thích dùm mình là mình sai ở chỗ nào dùm mình nghen. Thanks các bạn rất nhiều:)
Đa tạ, đa tạ :)
Hàm CHOOSE() phải hiểu như sau:
  • Cú pháp: CHOOSE('Thứ tự chỉ mục', 'Giá trị chỉ mục 1', ['Giá trị chỉ mục 2'], ....., ['Giá trị chỉ mục n'])
  • Với Choose( Max(7,8,5) ,7, 8, 5) --> Các số: ....7,8,5) đứng sau hàm Max() trong Choose() ứng với cú pháp của hàm có ý nghĩa sau: 'Giá trị chỉ mục 1' =7; 'Giá trị chỉ mục 2' =8; 'Giá trị chỉ mục 3' =5
  • Với hàm MAX(7,8,5) có kết quả là 8, ý nghĩa: Thứ tự chỉ mục 8, tức báo hãy đến chỉ mục 8 để lấy 'Giá trị'
  • Như trên bạn chỉ có 3 'Giá trị chỉ mục: 1,2,3, làm gì có chỉ mục thứ 8, nên nó tìm không ra phải báo lỗi thôi!
  • Nhưng nếu dùng: = CHOOSE( MATCH(MAX(F17:H17),F17:H17,0) ,$F$16,$G$16,$H$16),
    • MATCH(MAX(F17:H17),F17:H17,0) --> MATCH(MAX(7,8,5),{7,8,5},0) --> MATCH(8,{7,8,5},0) --> trong mảng {7,8,5} thì số 8 (max) có thứ tự 2
    • => CHOOSE( 2 'số tìm được từ hàm Match' ,$F$16,$G$16,$H$16) 'Giá trị chỉ mục 2, tức lấy ô G16= "Mục 2" chính là kết quả muốn lấy.
  • Thay vì Choose(Match(Max()),a,b,c) như trên, bạn có thể dùng: J17=OFFSET($E$16,,MATCH(MAX($F17:$H17),$F17:$H17,0)) Enter, rồi fill xuống.
  • Hoặc: J17=LOOKUP(2,1/(MAX($F17:$H17)=$F17:$H17),$F$16:$H$16) Enter, rồi fill xuống.
Bạn xem thêm:
Chúc bạn ngày vui.
 
Lần chỉnh sửa cuối:
Hàm CHOOSE() phải hiểu như sau:
  • Cú pháp: CHOOSE('Thứ tự chỉ mục', 'Giá trị chỉ mục 1', ['Giá trị chỉ mục 2'], ....., ['Giá trị chỉ mục n'])
  • Với Choose( Max(7,8,5) ,7, 8, 5) --> Các số: ....7,8,5) đứng sau hàm Max() trong Choose() ứng với cú pháp của hàm có ý nghĩa sau: 'Giá trị chỉ mục 1' =7; 'Giá trị chỉ mục 2' =8; 'Giá trị chỉ mục 3' =5
  • Với hàm MAX(7,8,5) có kết quả là 8, ý nghĩa: Thứ tự chỉ mục 8, tức báo hãy đến chỉ mục 8 để lấy 'Giá trị'
  • Như trên bạn chỉ có 3 'Giá trị chỉ mục: 1,2,3, làm gì có chỉ mục thứ 8, nên nó tìm không ra phải báo lỗi thôi!
  • Nhưng nếu dùng: = CHOOSE( MATCH(MAX(F17:H17),F17:H17,0) ,$F$16,$G$16,$H$16),
    • MATCH(MAX(F17:H17),F17:H17,0) --> MATCH(MAX(7,8,5),{7,8,5},0) --> MATCH(8,{7,8,5},0) --> trong mảng {7,8,5} thì số 8 (max) có thứ tự 2
    • => CHOOSE( 2 'số tìm được từ hàm Match' ,$F$16,$G$16,$H$16) 'Giá trị chỉ mục 2, tức lấy ô G16= "Mục 2" chính là kết quả muốn lấy.
  • Thay vì Choose(Match(Max()),a,b,c) như trên, bạn có thể dùng: J17=OFFSET($E$16,,MATCH(MAX($F17:$H17),$F17:$H17,0)) Enter, rồi fill xuống.
  • Hoặc: J17=LOOKUP(2,1/(MAX($F17:$H17)=$F17:$H17),$F$16:$H$16) Enter, rồi fill xuống.
Bạn xem thêm:
Chúc bạn ngày vui.
Bạn trình bày từng hàm quá dễ hiểu, cám ơn bạn, mình chưa học hàm offset & hàm lookup nên sẽ mày mò tự học liền. Đa tạ bạn nhiều lắm. Chúc bạn cuối tuần vui vẻ :)
 
Web KT

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

Back
Top Bottom