Trang 1/2 1 2 cuốicuối
Hiển thị kết quả tìm kiếm từ 1 đến 10 trên tổng số: 17
  1. #1
    Tham gia ngày
    07 2010
    Bài gởi
    431
    Cảm ơn
    1,516
    Được cảm ơn 245 lần trong 80 bài viết

    Đá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

    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 ĐTBhk hoặc ĐTBcn đạ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 ĐTBhk hoặc ĐTBcn đạ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 ĐTBhk hoặc ĐTBcn đạ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 ĐTBhk hoặc ĐTBcn đạ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 ĐTBhk hoặc ĐTBcn đạ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 Code:
    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")))) 
    Tập tin đính kèm Tập tin đính kèm
    thay đổi nội dung bởi: nguyenmanhnam, 02-01-12 lúc 10:25 AM

  2. #2
    Tham gia ngày
    09 2007
    Bài gởi
    290
    Cảm ơn
    34
    Được cảm ơn 294 lần trong 147 bài viết
    Trích Nguyên văn bởi nguyenmanhnam View Post
    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), xin gửi file mẫu lên cho các bác tiện sử dụng:
    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. Thành viên sau cảm ơn le phuong van về bài viết này:


  4. #3
    Tham gia ngày
    08 2008
    Nơi Cư Ngụ
    Thanh Xuân - Hà Nội
    Bài gởi
    353
    Cảm ơn
    1,914
    Được cảm ơn 171 lần trong 84 bài viết

    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é.

  5. #4
    Tham gia ngày
    09 2009
    Bài gởi
    2,607
    Cảm ơn
    3,310
    Được cảm ơn 5,340 lần trong 2,337 bài viết
    Trích Nguyên văn bởi trungvdb View Post
    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é.
    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

  6. Có 5 thành viên cảm ơn concogia về bài viết này:


  7. #5
    Tham gia ngày
    12 2011
    Bài gởi
    12
    Cảm ơn
    0
    Được cảm ơn 4 lần trong 3 bài viết
    Như file của bạn là chưa thực hiện theo tt 58 rồi

  8. #6
    Tham gia ngày
    05 2009
    Nơi Cư Ngụ
    An Giang
    Bài gởi
    5,858
    Cảm ơn
    7,402
    Được cảm ơn 8,959 lần trong 4,779 bài viết
    Trích Nguyên văn bởi concogia View Post
    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
    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...
    Tập tin đính kèm Tập tin đính kèm
    thay đổi nội dung bởi: Ba Tê, 03-01-12 lúc 12:00 PM
    ------------------------


    --Bể dốt mênh mông, quay đầu... là bờ ?!

    Tra Cứu Hàm Excel
    Kỷ niệm Hà Nội 16/01/2010

  9. #7
    Tham gia ngày
    09 2009
    Bài gởi
    2,607
    Cảm ơn
    3,310
    Được cảm ơn 5,340 lần trong 2,337 bài viết
    Trích Nguyên văn bởi Ba Tê View Post
    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...
    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
    Code:
    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ả
    =xl(E4:V4)

  10. Thành viên sau cảm ơn concogia về bài viết này:


  11. #8
    Tham gia ngày
    08 2010
    Bài gởi
    267
    Cảm ơn
    261
    Được cảm ơn 137 lần trong 108 bài viết
    Trích Nguyên văn bởi concogia View Post
    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
    Code:
    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ả
    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!
    Tập tin đính kèm Tập tin đính kèm
    thay đổi nội dung bởi: buithinhvan77, 04-01-12 lúc 09:52 PM

  12. #9
    Tham gia ngày
    09 2009
    Bài gởi
    2,607
    Cảm ơn
    3,310
    Được cảm ơn 5,340 lần trong 2,337 bài viết
    Trích Nguyên văn bởi buithinhvan77 View Post
    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!
    Bạn sửa chỗ này:
    Set DiemChu = Vung(1).Offset(, 12).Resize(, 3)
    thành
    Set DiemChu = Vung(1).Offset(, 11).Resize(, 3)
    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
    thay đổi nội dung bởi: concogia, 04-01-12 lúc 10:04 PM

  13. #10
    Tham gia ngày
    08 2010
    Bài gởi
    267
    Cảm ơn
    261
    Được cảm ơn 137 lần trong 108 bài viết
    Trích Nguyên văn bởi concogia View Post
    Bạn sửa chỗ này:thànhThâ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
    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!
    Tập tin đính kèm Tập tin đính kèm

Trang 1/2 1 2 cuốicuối

Thông tin về chủ đề này

Users Browsing this Thread

Hiện có 1 người đang xem đề tài này. (0 thành viên và 1 khách)

Bookmarks

Bookmarks

Quyền Sử Dụng Ở Diễn Ðàn

  • Bạn không thể đăng đề tài mới
  • Bạn không thể đăng trả lời
  • Bạn không thể đăng file đính kèm.
  • Bạn không thể sửa bài viết.
  •  

Mudim v0.8 Tắt VNI Telex Viqr Tổng hợp
Chính tả Bỏ dấu kiểu mới  [Bật/Tắt (F9)]