Bài này nếu nhập vào số nhỏ hơn 1 thì làm sao nhỉ bạn.Ví dụ được 0.5 Điểm.Code đại khái như sau:
(Bạn nào đã viết qua ứng dụng cho bên giáo dục, các giáo viên nhập điểm thi sẽ có thủ tục để xử lý nhập liệu kiểu này.)
Mã:Sub NhapDiem(tgtCell As Range) Select Case Len(tgtCell.Value) Case 1 tgtCell.Value = tgtCell.Value Case 2 If tgtCell.Value = 10 Then tgtCell.Value = tgtCell.Value Else tgtCell.Value = tgtCell.Value / 10 End If Case 3 tgtCell.Value = tgtCell.Value / 100 Case Else MsgBox "So khong duoc lon hon 3 chu so" End Select End Sub
Bài đã được tự động gộp:
Gõ 10 thì nhâp vô là 10 bác.
Thớt mà nhập a, b, c thì tèo thậtVới điểm nhỏ hơn 1 (0.4 điểm) thì sao?
Gõ nhầm a,b,c thì bồ tèo![]()
Bài này nếu nhập vào số nhỏ hơn 1 thì làm sao nhỉ bạn.Ví dụ được 0.5 Điểm.
Thớt mà nhập a, b, c thì tèo thật
Với điểm nhỏ hơn 1 (0.4 điểm) thì sao?
Gõ nhầm a,b,c thì bồ tèo![]()
Bài này nếu nhập vào số nhỏ hơn 1 thì làm sao nhỉ bạn.Ví dụ được 0.5 Điểm.
Đại loại là tác giả có muốn làm nhanh ( chưa nói tới lười nha) nhưng không tính được trường hợp xẩy ra để bẫy lỗi trong code và chưa tính đến sai sót.Và hậu quả thì cũng chưa biết luônĐọc lại yêu cầu ở bài 1 thì còn có nội dung "tự xuống dòng". (nhập điểm thi 2 số nó tự thêm dấu phẩy vào giữa và tự xuống dòng)
Nghĩa là gõ không cần enter. Khi đang gõ
- Gõ được 1 ký số thì chưa làm gì
- Gõ được 2 ký số thì "chèn dấu phẩy vào giữa", không cần gõ nữa và cũng không cần enter, phải tự xuống dòng.
- Không có cơ hội gõ 3 ký số vì mới 2 số đã nhảy ra khỏi ô.
Do đó những code nào viết dựa trên sự kiện Worksheet Change là không đạt yêu cầu, vì sự kiện sheet change chỉ xảy ra sau khi nhấn enter hoặc nhấn tab, hoặc nhấn các phím mũi tên, hoặc click chuột vào ô khác.
Giả sử vẫn lập trình được cho yêu cầu trên, thì cũng không nhanh hơn được bao nhiêu vì:
- Các số điểm tròn vẫn phải gõ 2 con 10, 20, 30, ... Nếu chỉ gõ 1 con vẫn phải nhấn enter
- Số nhỏ hơn 1 cũng phải gõ 2 con 03, 05, 08, so với không lập trình cũng không bớt được lần nhấn nào.
- 10 điểm không có cửa gõ 100, gõ 10 bị coi là 1.0.
Tóm lại yêu cầu này: một là không khả thi, 2 là hiệu quả không cao, 3 là hậu quả do sai sót còn lớn hơn hiệu quả mang lại.
.Đại loại là tác giả có muốn làm nhanh ( chưa nói tới lười nha) nhưng không tính được trường hợp xẩy ra để bẫy lỗi trong code và chưa tính đến sai sót.Và hậu quả thì cũng chưa biết luôn