vansunhuy58 > 11-10-23, 05:36 PM
ongke0711 > 11-10-23, 07:17 PM
Dim db As DAO.Database
Dim ThuocTinh As DAO.Property
vansunhuy58 > 12-10-23, 09:41 AM
ongke0711 > 12-10-23, 04:30 PM
(12-10-23, 09:41 AM)vansunhuy58 Đã viết: Mình đã chỉnh như vậy, nhưng vẫn chưa được
Xin gửi file DEMO nhờ chỉnh dùm, cảm ơn nhiều:
https://app.box.com/s/cg3ev60di8p4lfjd4gcu6iu9lp2bbr5e
Option Compare Database
Option Explicit
Private Sub Command0_Click()
enableShiftKey False
End Sub
Private Sub Command1_Click()
enableShiftKey True
End Sub
Sub enableShiftKey(blnFlag As Boolean) '// True: enable, False: disable
On Error GoTo ErrHandler
Dim db As DAO.Database
Dim ThuocTinh As DAO.Property
Set db = CurrentDb
db.Properties("AllowBypassKey") = blnFlag
Select Case blnFlag
Case True
MsgBox "Da mo khoa SHIFT", vbInformation, "Thông báo"
Case False
MsgBox "Da khoa SHIFT", vbInformation, "Thông báo"
End Select
Err_Exit:
Set db = Nothing
Set ThuocTinh = Nothing
Exit Sub
ErrHandler:
If Err.Number = 3270 Then ' Property not found.
Set ThuocTinh = db.CreateProperty("AllowBypassKey", dbBoolean, blnFlag)
db.Properties.Append ThuocTinh
Else
MsgBox Err.Description
End If
Resume Err_Exit
End Sub
vansunhuy58 > 12-10-23, 05:24 PM
(12-10-23, 04:30 PM)ongke0711 Đã viết:(12-10-23, 09:41 AM)vansunhuy58 Đã viết: Mình đã chỉnh như vậy, nhưng vẫn chưa được
Xin gửi file DEMO nhờ chỉnh dùm, cảm ơn nhiều:
https://app.box.com/s/cg3ev60di8p4lfjd4gcu6iu9lp2bbr5e
Code trong file của bạn có 2 vấn đề:
- Code chạy không sai nhưng nó lòng vòng, lặp lại và logic xử lý lộn xộn.
- Cách bạn test như thế nào mà biết là nó đã vô hiệu hóa SHIFT hay không? Tôi test là nó có hoạt động nhé.
Tôi sửa lại code cho gọn như dưới đây:
Mã:Option Compare Database
Option Explicit
Private Sub Command0_Click()
enableShiftKey False
End Sub
Private Sub Command1_Click()
enableShiftKey True
End Sub
Sub enableShiftKey(blnFlag As Boolean) '// True: enable, False: disable
On Error GoTo ErrHandler
Dim db As DAO.Database
Dim ThuocTinh As DAO.Property
Set db = CurrentDb
db.Properties("AllowBypassKey") = blnFlag
Select Case blnFlag
Case True
MsgBox "Da mo khoa SHIFT", vbInformation, "Thông báo"
Case False
MsgBox "Da khoa SHIFT", vbInformation, "Thông báo"
End Select
Err_Exit:
Set db = Nothing
Set ThuocTinh = Nothing
Exit Sub
ErrHandler:
If Err.Number = 3270 Then ' Property not found.
Set ThuocTinh = db.CreateProperty("AllowBypassKey", dbBoolean, blnFlag)
db.Properties.Append ThuocTinh
Resume Err_Exit
Else
MsgBox Err.Description
Resume Err_Exit
End If
End Sub