Mừng Sinh Nhật GPE 11: sáng 25/6 Hà Nội; 1/7 Huế/Đà Nẵng; Trưa 2/7 TPHCM

Đánh giá học lực của học sinh theo Thông tư số 58/2011/TT-BDGĐT ngày 12/12/2011

Thảo luận trong 'Excel và Giáo Dục' bắt đầu bởi nguyenmanhnam, 2 Tháng một 2012.

  1. nguyenmanhnam

    nguyenmanhnam Thành viên tiêu biểu

    Em vừa làm xong bảng đánh giá xếp loại học sinh theo tiêu chuẩn từ khoản 1 đến khoản 5 Thông tư số 58/2011/TT-BDGĐT ngày 12/12/2011 của Bộ trưởng Bộ giáo dục và đào tạo (chưa xét đến trường hợp khoản 6 vì trường hợp này hầu như không xảy ra), mặc dù trên diễn đàn có rất nhiều bài về VBA, nhưng không phải ai cũng thạo về mảng này, mặt khác bảng điểm học sinh dữ liệu không lớn, xin gửi file mẫu lên cho các bác tiện sử dụng:

    Điều 13. Tiêu chuẩn xếp loại học kỳ và xếp loại cả năm học
    1. Loại giỏi, nếu có đủ các tiêu chuẩn sau đây:
    a) Điểm trung bình các môn học từ 8,0 trở lên, trong đó điểm trung bình của 1 trong 2 môn Toán, Ngữ văn từ 8,0 trở lên; riêng đối với học sinh lớp chuyên của trường THPT chuyên phải thêm điều kiện điểm trung bình môn chuyên từ 8,0 trở lên;
    b) Không có môn học nào điểm trung bình dưới 6,5;
    c) Các môn học đánh giá bằng nhận xét đạt loại Đ.
    2. Loại khá, nếu có đủ các tiêu chuẩn sau đây:
    a) Điểm trung bình các môn học từ 6,5 trở lên, trong đó điểm trung bình của 1 trong 2 môn Toán, Ngữ văn từ 6,5 trở lên; riêng đối với học sinh lớp chuyên của trường THPT chuyên phải thêm điều kiện điểm trung bình môn chuyên từ 6,5 trở lên;
    b) Không có môn học nào điểm trung bình dưới 5,0;
    c) Các môn học đánh giá bằng nhận xét đạt loại Đ.
    3. Loại trung bình, nếu có đủ các tiêu chuẩn sau đây:
    a) Điểm trung bình các môn học từ 5,0 trở lên, trong đó điểm trung bình của 1 trong 2 môn Toán, Ngữ văn từ 5,0 trở lên; riêng đối với học sinh lớp chuyên của trường THPT chuyên phải thêm điều kiện điểm trung bình môn chuyên từ 5,0 trở lên;
    b) Không có môn học nào điểm trung bình dưới 3,5;
    c) Các môn học đánh giá bằng nhận xét đạt loại Đ.
    4. Loại yếu: Điểm trung bình các môn học từ 3,5 trở lên, không có môn học nào điểm trung bình dưới 2,0.
    5. Loại kém: Các trường hợp còn lại.
    6. Nếu ĐTB[SUB]hk[/SUB] hoặc ĐTB[SUB]cn[/SUB] đạt mức của từng loại quy định tại các Khoản 1, 2 điều này nhưng do kết quả của một môn học nào đó thấp hơn mức quy định cho loại đó nên học lực bị xếp thấp xuống thì được điều chỉnh như sau:
    a) Nếu ĐTB[SUB]hk[/SUB] hoặc ĐTB[SUB]cn[/SUB] đạt mức loại G nhưng do kết quả của một môn học nào đó mà phải xuống loại Tb thì được điều chỉnh xếp loại K.
    b) Nếu ĐTB[SUB]hk[/SUB] hoặc ĐTB[SUB]cn[/SUB] đạt mức loại G nhưng do kết quả của một môn học nào đó mà phải xuống loại Y thì được điều chỉnh xếp loại Tb.
    c) Nếu ĐTB[SUB]hk[/SUB] hoặc ĐTB[SUB]cn[/SUB] đạt mức loại K nhưng do kết quả của một môn học nào đó mà phải xuống loại Y thì được điều chỉnh xếp loại Tb.
    d) Nếu ĐTB[SUB]hk[/SUB] hoặc ĐTB[SUB]cn[/SUB] đạt mức loại K nhưng do kết quả của một môn học nào đó mà phải xuống loại Kém thì được điều chỉnh xếp loại Y.


    Với bảng điểm có cấu trúc như hình duới thì hàm tại ô R8 sẽ như sau:

    PHP:
    IF(AND(Q8>=8;OR(C8>=8;G8>8);MIN(C8:L8;P8)>=6,5);"Giỏi";IF(AND(Q8>=6,5;OR(C8>=6,5;G8>=6,5);MIN(C8:L8;P8)>=5);"Khá";IF(AND(Q8>=5;OR(C8>=5;G8>=5);MIN(C8:L8;P8)>=3,5);"Trung bình";IF(AND(Q8>3,5;MIN(C8:L8;P8)>=2);"Yếu";"Kém"))))
    [​IMG]
     

    Các file đính kèm:

    Lần chỉnh sửa cuối: 2 Tháng một 2012
  2. le phuong van

    le phuong van Thành viên thường trực

    1) Nếu vừa làm xong, bạn nên để các bạn khác góp ý "trước khi sử dụng"
    2) Đã theo TT58 sao lại còn G; K ở 3 môn đánh giá?
    3) Nếu trường bạn thuộc loại TRƯỜNG CHUYÊN hs chỉ có 2loại G và K thì khoản 6 đúng là it xảy ra, nhưng để tiện sử dụng cho nhiều người sao lại ít xảy ra: NẰM TRONG NHÀ VẪN CÓ KHẢ NĂNG BỊ XE HƠI TÔNG, bạn có tin không?
     
  3. trungvdb

    trungvdb Thành viên thường trực

    Nếu làm đầy đủ các trường hợp chắc phải sử dụng đến VBA các bác nhỉ?

    Em thắc mắc nếu hàm trên áp dụng đầy đủ cho tất cả các trường hợp (tất cả các khoản từ khoản 1 đến hàm 6) thì hàm if có đáp ứng được không? vì lúc này xuất hiện quá nhiều hàm if, em muốn hỏi có giải pháp nào cho việc dùng hàm trong trường hợp này không?

    Em rất muốn biết VBA trong trường hợp này sẽ viết thế nào nhỉ? Các bác chỉ cho em với nhé.
     
  4. concogia

    concogia Gội rồi mới Cạo

    Mình thấy vấn đề này các bạn đề cập hơi nhiều mà hình như chưa ngã ngũ gì. Có bạn còn sử dụng cả 2 cột để xếp loại vì nhiều IF hay công thức dài quá. Theo mình không nên làm như thế, nếu hàm dài quá, hoặc nhều IF quá thì nên bỏ nó vào Name hoặc dùng VBA cho đơn giản
    Nếu các bạn thống nhất được các điều kiện để Xếp loại Học lực theo Thông Tư 58 ( vì hình như có trường hợp Tỉnh, Thành phố, Quận, Huyện tính khác nhau _ cũng ngộ thật _) thì việc viết Code hoặc sử dụng công thức cho cái "dzụ" này đơn giản thôi mà. Nếu được, các bạn chỉ đưa khoảng 7 đến 10 trường hợp, nhập điểm Trung bình Môn vào rồi nhập luôn Xếp Loại, giải thích chi tiết tý tẹo mình nghĩ các cao thủ trên GPE dù không trong nghành Giáo dục cũng xử lý "ẻm" này cái "roẹt". Híc
    Thân
     
  5. phuonglc

    phuonglc Thành viên mới

    Như file của bạn là chưa thực hiện theo tt 58 rồi
     
  6. Ba Tê

    Ba Tê Cạo Rồi Khỏi Gội

    Một bảng để thử nè "Cò" ơi.
    Nhờ các bạn sửa "cái roẹt" cho gọn mấy cái hàm tự tạo giùm, mình thấy nó còn "sao sao" ấy.
    Các điều kiện dựa vào bài #1 bên trên, thêm cách xếp hạng HS theo "kiểu" của mình: Dựa vào Kết quả Học Lực và Hạnh Kiểm, Học Lực Yếu dù 10.0 vẫn xếp sau thằng HL Giỏi 8.0...
     

    Các file đính kèm:

    Lần chỉnh sửa cuối: 3 Tháng một 2012
  7. concogia

    concogia Gội rồi mới Cạo

    Bài số #1 đâu có đủ các trường hợp, thí dụ một em vừa bị khống chế môn chấm điểm ( thí dụ môn Công Nghệ ) từ "Giỏi" tuột xuống "Khá" lại vừa bị phang cho 1 hoặc 2 nhát CĐ ở các môn đánh giá bằng nhận xét thì tính ra sao ??? có tuột nữa hay chỉ bị một trong 2 cái khống chế đó
    Ngồi buồn viết đại thử một code ( dựa theo kết quả code của Ba Tê ). Khi nào hiểu hết các yêu cầu thì .....làm lại cho gọn
    Híc
    Mã:
    Public Function XL(Vung As Range) As String
    Dim DiemChu, DiemSo, Wf, Dtb, VanToan, Kq, DcD
    Set Wf = Application.WorksheetFunction:                VanToan = Wf.Min(Vung(1), Vung(6))
    Dtb = Vung(Vung.Columns.Count):                        Set DiemSo = Vung.Resize(, 12)
    Set DiemChu = Vung(1).Offset(, 14).Resize(, 3):        DcD = Wf.CountIf(DiemChu, ChrW(272))
    If Dtb = "" Then Kq = "": Exit Function
        If Dtb >= 8 And VanToan >= 8 Then
            Kq = Switch(Wf.CountIf(DiemSo, "<6.5") = 0 And DcD = 3, "G", Wf.CountIf(DiemSo, "<6.5") = 0 And DcD = 2, "TB", Wf.CountIf(DiemSo, "<6.5") = 0 And DcD < 2, "Y", _
            Wf.CountIf(DiemSo, "<6.5") = 1 And Wf.Min(DiemSo) >= 3.5 And DcD = 3, "K", Wf.CountIf(DiemSo, "<6.5") = 1 And Wf.Min(DiemSo) >= 3.5 And DcD < 3, "Y", _
            Wf.CountIf(DiemSo, "<6.5") = 1 And Wf.Min(DiemSo) >= 2 And DcD = 3, "TB", Wf.CountIf(DiemSo, "<6.5") = 1 And Wf.Min(DiemSo) >= 2 And DcD < 3, "Y", _
            Wf.CountIf(DiemSo, "<6.5") = 1 And Wf.Min(DiemSo) < 2, "Y")
        ElseIf Dtb >= 6.5 And VanToan >= 6.5 Then
            Kq = Switch(Wf.CountIf(DiemSo, "<5") = 0 And DcD = 3, "K", Wf.CountIf(DiemSo, "<5") = 0 And DcD = 2, "TB", Wf.CountIf(DiemSo, "<5") = 0 And DcD < 2, "Y", _
            Wf.CountIf(DiemSo, "<5") = 1 And Wf.Min(DiemSo) >= 2 And DcD = 3, "TB", Wf.CountIf(DiemSo, "<5") = 1 And Wf.Min(DiemSo) >= 2 And DcD < 3, "Y", _
            Wf.CountIf(DiemSo, "<5") = 1 And Wf.Min(DiemSo) < 2, "Y")
        ElseIf Dtb >= 5 And VanToan >= 5 Then
            Kq = Switch(Wf.CountIf(DiemSo, "<3.5") = 0 And DcD = 3, "TB", Wf.CountIf(DiemSo, "<3.5") = 0 And DcD < 3, "Y", _
            Wf.CountIf(DiemSo, "<3.5") = 1 And Wf.Min(DiemSo) >= 2, "Y", Wf.CountIf(DiemSo, "<3.5") = 1 And Wf.Min(DiemSo) < 2, "Kem")
        ElseIf Dtb >= 3.5 And VanToan >= 3.5 Then
            Kq = Switch(Wf.CountIf(DiemSo, "<2") = 0, "Y", Wf.CountIf(DiemSo, "<2") > 0, "Kem")
        Else
            Kq = "Kem"
        End If
    XL = Kq
    End Function
    
    Trong file của Ba Tê nhập công thức ở cell kết quả
     
  8. buithinhvan77

    buithinhvan77 Thành viên thường trực

    Bác Cò ơi! Chỉnh lại dùm em đoạn code trên với, Dữ liệu của em khác bác Ba Te một chút nên Code chạy sai mất roài, và hình như trong đoạn code trước cũng bị xếp chưa chính xác!
     

    Các file đính kèm:

    Lần chỉnh sửa cuối: 4 Tháng một 2012
  9. concogia

    concogia Gội rồi mới Cạo

    Bạn sửa chỗ này:
    thành
    ThânTB: cái này mình viết theo ý Ba Tê thôi, bạn xem chỗ nào chưa đúng thì chỉ giúp mình, mình viết hơi dài vì muốn phân ra từng khúc để nếu sai chỗ nào cũng dễ kiếm để sửa.Híc, cái này không khó nhưng ...........chóng mặt lắm
     
    Lần chỉnh sửa cuối: 4 Tháng một 2012
  10. buithinhvan77

    buithinhvan77 Thành viên thường trực

    Bác ơi cái đó tối qua em cũng thử thay đổi vùng tính điểm số và điểm chữ mà nó toàn xếp Tb hoặc Yếu kém thôi , bác Test thử xem giúp em với!
     

    Các file đính kèm:

  11. concogia

    concogia Gội rồi mới Cạo

    1- Trong code bạn chưa sửa chỗ này thì nó chạy thế quái nào đúng được
    2- Mình đã nói là mình làm theo ý của Ba Tê thôi, còn bạn sửa dữ liệu và thấy chỗ nào chưa đúng với tinh thần của cái "Thông tư Thông chung" 58 gì đó thì báo cho mình sửa
    Giải thích như Ba Tê là Ok chưa ??? còn chỗ nào chưa hợp lý ??? Hãy thử thuyết minh cách xử lý vài trường hợp hs bị khống chế cả 2 loại điểm: điểm số & điểm chữ
    Híc
     
  12. Ba Tê

    Ba Tê Cạo Rồi Khỏi Gội

    Đúng là không ai phản ứng với kiểu "hiểu" của mình mà lại hỏi sang chuyện khác.
    Thêm một vài trường hợp đặc biệt nữa giải thích theo kiểu mình hiểu, các bạn tham gia góp ý nhé.
     

    Các file đính kèm:

  13. rubikta

    rubikta Thành viên mới

    Xếp loại học lực theo thông tư 58

    Theo thông tư 58, các môn TD, AN, MT là đánh giá: đạt (Đ) hoặc chưa đạt (CĐ). Theo như hàm của bạn nếu như ô hoặc M, N, O chưa đạt thì ô R sẽ được xếp loại gì? Hình như bạn chưa chú ý đến điều kiện này. Rất mong nhận được hồi âm. Thanks
     
  14. phuonglc

    phuonglc Thành viên mới

    Thứ nhất chưa đáp ướng được thông tư 58/2011/TT-BGD thứ 2 Hàm này đâu có liên quan gi đến 3 môn đánh giá đâu dù cả 3 môn có CĐ thì cũng chẳng ảnh hưởng gì đến xếp loại HS cả :D:D:D:D:D:D
     
  15. khiemdinhhoang

    khiemdinhhoang Thành viên mới

    Theo TT 58 nếu 1 trong 3 môn đánh giá bằng nhận xét là chưa đạt thì học sinh đó xếp loại Yếu đấy. Bạn xem và nhập thêm điều kiện này nhé. Chúc bạn sớm post bài toán này nhé.
     
  16. nvhan

    nvhan Thành viên mới

    Xếp loại học lực theo TT 58

    Hàm if hoàn toàn làm được đấy bạn ạ, không cần phải VBA, ít người biết. Nhưng trong khoản 6(nâng bậc) không đề cập đến một ý: Nếu học sinh chỉ vì một môn mà từ loại giỏi bị xếp xuống loại kém thì không thấy đưa ra nâng bậc. (Ví dụ: Chỉ có một môn có điểm 1,9; còn lại các môn khác từ 8 trở lên). Trong lúc đó lại có: Chỉ vì một môn mà từ loại khá xếp xuống loại Kém thì được nâng lên loại yếu. Tôi dùng hàm if thì cả hai trường hợp trên đều được nâng lên loại yếu. Như vậy liệu có đúng với thông tư 58 không? Các bạn cho ý kiến. Tôi cho ví dụ trong tệp đính kèm
     

    Các file đính kèm:

  17. Xuân hiếu

    Xuân hiếu Thành viên thường trực

    Theo ý kiến của cá nhân mình thì HS này đã đủ đạt loại khá rồi nhưng trong TT58 không nói loại giỏi thì ta xem như là Khá và nâng lên loại Y là đúng rùi.
    Còn về viết hàm trực tiếp thì theo mình nghỉ là được nhưng nếu bảng tính có quá nhiều dữ liệu và quá nhiều hàm trực tiếp như thế thì rất là nặng đó bạn àh
     

Chia sẻ trang này