Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Tắt cảnh báo Access khi xoá record
#1
Cháu muốn xoá record mà không muốn hiện cảnh báo của access "you are about to delete 1 record(s)?
Cháu đã thử tắt cảnh báo bằng code VBA dưới


    DoCmd.SetWarnings False
   DoCmd.RunCommand acCmdDeleteRecord
    DoCmd.SetWarnings True

Nhưng Access vẫn cứ thông báo cảnh báo như trên.
Như vậy có cách nào khác khắc phục khi xoá thực hiện ngầm chạy mà không thông báo không ?
Cháu xin cảm ơn.
DooHoaangPhuuc
Chữ ký của DooHoaangPhuuc DooHoaangPhuuc,gia nhập Thủ Thuật Access từ 27-06 -17.
ღღღღღTài sản của DooHoaangPhuuc (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#2
Ủa sao kỳ vậy nhỉ? Docmd.Setwarning là đúng rồi mà.
Bạn thử thay Runcommand bằng phương thức khác xem sao. Chạy bằng SQL hay Query cũng được mà
Chữ ký của duynamvnn1208 duynamvnn1208,gia nhập Thủ Thuật Access từ 25-06 -17.
Reply
Những người đã cảm ơn DooHoaangPhuuc
#3
Bạn chép đoạn code này xem sao nhé:
Private Sub cmdxoa_Click()
On Error GoTo Err_cmdxoa_Click

    DoCmd.SetWarnings False
    DoCmd.RunCommand acCmdDeleteRecord
    DoCmd.SetWarnings True
    
Exit_cmdxoa_Click:
    Exit Sub

Err_cmdxoa_Click:
    MsgBox Err.Description
    Resume Exit_cmdxoa_Click
    
End Sub
Chữ ký của bằng lăng bằng lăng,gia nhập Thủ Thuật Access từ 06-08 -18.
Reply
Những người đã cảm ơn DooHoaangPhuuc
#4
Vô VBA Option -> Tab General -> Error Trapping -> chọn "Break On Unhandled Errors"

[Hình: 43863570155_589c9000fb_o.png]
Chữ ký của ongke0711 If you BORN poor, it's not your mistake. But if you DIE poor, It's your mistake!
ღღღღღTài sản của ongke0711 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn NguyenDungAnh , DooHoaangPhuuc
#5
Code xử lý xóa record:
Giả sử bạn có một nút lệnh xóa record tên là Xoarecord
Mã:
Private Sub Xoarecord_Click()
On Error GoTo Biloi
DoCmd.RunCommand acCmdDeleteRecord
Biloi:
End Sub
ở event form Form_BeforeDelConfirm (tam dịch trước khi xác nhận xóa)
Mã:
Private Sub Form_BeforeDelConfirm(Cancel As Integer, Response As Integer)
Dim n_Reply As Integer
Response = acDataErrContinue
n_Reply = msgBox("Ban muon xoa record nay", vbQuestion + vbYesNo, "Thong Bao")
If n_Reply = vbNo Then
Cancel = True
End If
End Sub
Ở msgBox nếu bạn yes record sẽ bị xóa nếu bạn no hành động xóa sẽ được bỏ qua. Lệnh Response = acDataErrContinue tắt cảnh báo cảnh báo của access "you are about to delete record(s)" và thay thế bằng thông báo của n_Reply, muốn thông báo bằng tiếng việt bạn có thể dùng hàm msgBoxUni đã có hướng dẫn trên forrum
Chữ ký của tranthanhan1962 Kết quả cuối cùng của một đời người, không phải bạn có được bao nhiêu tiền bạc, tài sản. Mà bạn còn bao nhiêu người bạn  thumbs up
ღღღღღTài sản của tranthanhan1962 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn NguyenDungAnh , DooHoaangPhuuc
#6
Cháu xin cảm ơn sự chỉ bảo.
Hiện tại máy tính ở nhà cháu bị lỗi về phần mềm, nhất là office càng ngày hoạt động không ổn định. 
Cháu qua các máy khác nơi làm việc đều bình thường. Cháu cụng đang chuẩn bị cài lại toàn bộ máy tính.

Nhân đây cháu cũng xin hỏi cách khắc phục lỗi viết code như bên dưới  :

Private Sub MAHANG_AfterUpdate()

Select Case Me.LOAI

Case 1
LOAI  = ”IDTV02”
    If Mid(MAHANG, 2, 9) <> "TV1809256" Then
    MsgBox "SAI MA HANG ! VUI LONG KIEM TRA LAI", vbInformation, "Thông báo"
    DoCmd.SetWarnings False
    DoCmd.RunCommand acCmdDeleteRecord
    DoCmd.SetWarnings True
    End if
Case 2
LOAI  = ”IDTL02”
    If Mid(MAHANG, 2, 9) <> "TL1909181" Then
    MsgBox "SAI MA HANG ! VUI LONG KIEM TRA LAI", vbInformation, "Thông báo"
    DoCmd.SetWarnings False
    DoCmd.RunCommand acCmdDeleteRecord
    DoCmd.SetWarnings True
    End if

Exit Sub
End Select

Trên Form nhập liệu có các Combobox : LOAI,  textbox MAHANG
Sau khi chọn LOAI và cập nhật MAHANG. 
Code dò nếu không đúng MAHANG sẽ thông báo Msgbox, và xoá record hiện tại nhập.
Không biết cháu viết sai như thế nào, record vẫn lưu mà không báo lỗi khi MAHANG không đúng.
Cháu xin cảm ơn sự hướng dẫn.
DooHoaangPhuuc
Chữ ký của DooHoaangPhuuc DooHoaangPhuuc,gia nhập Thủ Thuật Access từ 27-06 -17.
ღღღღღTài sản của DooHoaangPhuuc (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#7
Có 2 vấn đề cần bàn như sau:

1. Tại sao bạn không dùng dạng Cascading Combobox tức là khi chọn Combobox 1 thì Record Source của Combobox 2 cũng được Filter theo giá trị được chọn ở Combobox1. 
Khi chọn LOAI thì ở combobox MAHANG chỉ hiển thị nhưng MAHANG thuộc LOAI đã chọn thôi -> không cần bẫy lỗi có đúng MAHANG hay không

2. Tránh lặp lại nhưng đoạn code giống nhau. 

Form của bạn chắc dạng Bound Form?
Khi bẫy lỗi ở MAHANG, lúc đó chưa nhảy qua record khác thì bạn chỉ cần Me.Undo hoặc xoá trắng textbox là được rồi, không cần tới RunCommand AcCmdDelete đâu.
Có thể sửa lại như sau:

Private Sub MAHANG_AfterUpdate()
  Select Case Me.LOAI
  Case ”IDTV02”
    If Mid(MAHANG, 2, 9) <> "TV1809256" Then
      MsgBox "SAI MA HANG ! VUI LONG KIEM TRA LAI", vbInformation, "Thông báo"
      Me.txtKhac.SetFocus
      Me.MAHANG=“”  
      Me.MAHANG.SetFocus
      Exit Sub   
    End if

  Case ”IDTL02”
    If Mid(MAHANG, 2, 9) <> "TL1909181" Then
      MsgBox "SAI MA HANG ! VUI LONG KIEM TRA LAI", vbInformation, "Thông báo"
      Me.txtKhac.SetFocus
      Me.MAHANG=“”  
      Me.MAHANG.SetFocus
      Exit Sub   
  End Select

End Sub
Chữ ký của ongke0711 If you BORN poor, it's not your mistake. But if you DIE poor, It's your mistake!
ღღღღღTài sản của ongke0711 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn NguyenDungAnh


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  [Help] Ẩn menu bar khi chạy file access 2003 trong access 2010 bằng lăng 0 174 31-08-18, 05:03 PM
Bài mới nhất: bằng lăng
  Import dữ liệu từ excel vào access ChiMai 3 421 25-05-18, 08:31 AM
Bài mới nhất: domfootwear
  [Hỏi] Ai đang dùng access toidjtjmtoi 1 310 14-04-18, 05:04 PM
Bài mới nhất: duynamvnn1208
  Xin hỏi về tắt thanh công cụ trong access Thanh Ngân 2 375 28-02-18, 03:38 PM
Bài mới nhất: cpucloi
  chia sẻ dữ liệu db access qua mạng LAN. tuanvu2409 5 774 02-02-18, 12:41 AM
Bài mới nhất: tranthanhan1962

Chuyển nhanh:


User(s) browsing this thread: 1 Guest(s)
Diễn Đàn Thơ Văn Thi Ẩm Lâu|Nhà Hàng Sông Thơ| PMA Nha Trang| Gỗ Acrylic Không Đường Line