Thủ Thuật Access

Thế Giới Thủ Thuật với Access

Bắt lỗi khi nhập liệu sai và người dùng đóng form

Posted by Noname on 28.01.2010

Hỏi: Tôi tạo form nhập liệu, và muốn bắt lỗi khi người dùng nhập sai nhưng muốn đóng form thì hiện ra thông báo : ” Có dữ liệu bị lỗi, Bạn có muốn đóng không?” Vậy tôi phải bắt lỗi thế nào?

Đáp:
(theo hướng dẫn anh phatnq2002 trên DKT)
Để bắt được lỗi này, bạn phải kết hợp hai sự kiện Form_Error và Form_UnLoad.

Bạn nên tạo một biến dùng chung cho module (nghĩa là khai báo ở vùng Declaration của Form Module), ví dụ Dim hasError As Boolean chẳng hạn

Cái sự kiện bạn bắt bao gồm 2 cái:

1. là Form_Unload: sự kiện này xảy ra trước Close. Do vậy nếu Cancel=True ở đây đồng nghĩa với việc hủy Close.

Private Sub Form_Unload(Cancel As Integer)
If hasError Then
If MsgBox(“Có dữ liệu bị lỗi, Bạn có muốn đóng không?”, vbYesNo) = vbNo Then
Cancel = True
Else
DoCmd.RunCommand acCmdUndo
End If
End If
End Sub

2. là Form_Error

Private Sub Form_Error(DataErr As Integer, Response As Integer)
Respponse = acDataErrContinue
hasError = True
Select Case DataErr
Case 2169
MsgBox “Co loi khi luu du lieu.”
Case Else
MsgBox “Err No.” & DataErr & vbCrLf & “Err Mess: ” & Error(DataErr)
End Select
End Sub

Gửi phản hồi

Mời bạn điền thông tin vào ô dưới đây hoặc kích vào một biểu tượng để đăng nhập:

WordPress.com Logo

Bạn đang bình luận bằng tài khoản WordPress.com Log Out / Thay đổi )

Twitter picture

Bạn đang bình luận bằng tài khoản Twitter Log Out / Thay đổi )

Facebook photo

Bạn đang bình luận bằng tài khoản Facebook Log Out / Thay đổi )

Google+ photo

Bạn đang bình luận bằng tài khoản Google+ Log Out / Thay đổi )

Connecting to %s

 
%d bloggers like this: