Tôi có thiết kế 1 bảng tính, trong bảng tính này tôi muốn tại vị trí 2 ô nhập số liệu đầu vào mà vượt quá giá trị cho phép thì hiện thị thông báo. Nhưng khi tôi viết đoạn code bỏ vào trong sự kiện change hoặc selectionchange của worksheet thì dòng thông báo hiện liên tục mỗi khi ra khỏi ô nhập khác (mặc dù số liệu nhập nằm trong vùng cho phép) và cũng khi nhập ngoài vùng giá trị thì cũng không thấy hiển thị thông báo. Lưu ý ở đây tôi không muốn dùng Data validation vì điều kiện khoảng giữa không cho số thập phân (vd 0.05 < x <0.12). Rất mong các anh chị chỉ dẫn các khắc phục. Đoạn code của tôi đã viết như sau:
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c, Phi As Single
With Sheets("BTKCAU4L").Select
c = Range("J41")
Phi = Range("K41")
End With
Select Case c
Case 0.005 To 0.038
Exit Sub
Case Else
MsgBoxUni VNI("Môøi baïn xem laïi giaù trò löïc dính c ñaõ nhaäp, _
baïn coù theå tham khaûo trong" & Chr(10) & "qui trình baûng B-3 _
ñeå laáy giaù trò löïc dính c töông öùng cho moãi loaïi ñaát!!!" & Chr(10) _
& "Hoaëc nhaán nuùt tham khaûo soá lieäu E,c,Phi ôû phía treân _
trong baûng tính..."), vbRetryCancel + vbExclamation, _
VNI("KIEÅM TRA LÖÏC DÍNH C !!! ")
End Select
If Phi >= 7 And Phi <= 35 Then
Exit Sub
Else
MsgBoxUni VNI("Môøi baïn xem laïi giaù trò goùc noäi ma saùt phi ñaõ nhaäp, _
baïn coù theå tham khaûo trong" & Chr(10) & "qui trình baûng B-3 ñeå _
laáy giaù trò löïc dính c töông öùng cho moãi loaïi ñaát!!!" & Chr(10) _
& "Hoaëc nhaán nuùt tham khaûo soá lieäu E,c,Phi ôû phía treân trong _
baûng tính..."), vbRetryCancel + vbExclamation, VNI("KIEÅM TRA _
GOÙC NOÄI MA SAT !!! ")
End If
End Sub
Chỉnh sửa lần cuối bởi điều hành viên: