Hỏi về" thông báo lỗi khi bẫy lỗi? (1 người xem)

  • Thread starter Thread starter nad582
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

nad582

Thành viên thường trực
Tham gia
7/6/11
Bài viết
317
Được thích
48
Chào các a(c) trong GPE, e có vấn đề xin các a(c) chỉ giúp.
e có đoạn code như sau:
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
On Error GoTo Handle
Workbooks.Open (Application.GetOpenFilename)
If ActiveWorkbook.Name <> "BAO CAO.xls" Then
MsgBox "File khong dung? Vui long kiem tra lai ten file!!", vbCritical, "THONG BAO LOI###"
ActiveWorkbook.Close
Else
Workbooks("BAO CAO.xls").Sheets("sheet1").[B2:J65000].Value = Workbooks("DON HANG.xls").Sheets("sheet2").[A2:I65000].Value
MsgBox "XUAT THANH CONG, VUI LONG KIEM TRA KET QUA...", , "THONG BAO!!"
End If
Application.ScreenUpdating = True
Handle:
End
End Sub
...................
trong đoạn code e có sử dụng hàm bẫy lỗi:
On Error GoTo Handle
Handle:
Vậy nếu như code bị lỗi thì nó sẽ thông báo (mgsbox) lỗi rồi thoát ra. Vậy phải làm như thế nào?
Ví dụ đoạn code trên ở dòng tô màu, đó là dòng code đúng vì trong Workbooks("BAO CAO.xls") Sheets("sheet1") và trong Workbooks("DON HANG.xls") Sheets("sheet2")
Vậy nếu trong Workbooks("DON HANG.xls") không có Sheets("sheet2") .Như vậy thi thực hiện code thì nó sẽ hiện lên thông báo lá "không xuất được dữ liệu, xin kiểm tra lại". sau đó kết thúc...
.................................
XIN CÁC A(C) GIÚP ĐỠ. XIN CẢM ƠN..
 
Lần chỉnh sửa cuối:
Bạn thử như vầy xem sao

PHP:
Private Sub CommandButton1_Click()
 Application.ScreenUpdating = False
 On Error GoTo Handle
 Workbooks.Open (Application.GetOpenFilename)
 If ActiveWorkbook.Name <> "BAO CAO.xls" Then
     MsgBox "File khong dung? Vui long kiem tra lai ten file!!", vbCritical, "THONG BAO LOI###"
     ActiveWorkbook.Close
Else
    Workbooks("BAO CAO.xls").Sheets("sheet1").[B2:J65000].Value = Workbooks("DON HANG.xls").Sheets _ 

"sheet1"). [A2:I65000].Value
   MsgBox "XUAT THANH CONG, VUI LONG KIEM TRA KET QUA...", , "THONG BAO!!"
End If
Application.ScreenUpdating = True

LoiCT:     Exit Sub

Handle:
    MsgBox Err,,Error()
    Application.ScreenUpdating = True

    Resume LoiCT

End Sub
 
Upvote 0
PHP:
Private Sub CommandButton1_Click()
 Application.ScreenUpdating = False
 On Error GoTo Handle
 Workbooks.Open (Application.GetOpenFilename)
 If ActiveWorkbook.Name <> "BAO CAO.xls" Then
     MsgBox "File khong dung? Vui long kiem tra lai ten file!!", vbCritical, "THONG BAO LOI###"
     ActiveWorkbook.Close
Else
    Workbooks("BAO CAO.xls").Sheets("sheet1").[B2:J65000].Value = Workbooks("DON HANG.xls").Sheets _ 

"sheet1"). [A2:I65000].Value
   MsgBox "XUAT THANH CONG, VUI LONG KIEM TRA KET QUA...", , "THONG BAO!!"
End If
Application.ScreenUpdating = True

LoiCT:     Exit Sub

Handle:
    MsgBox Err,,Error()
    Application.ScreenUpdating = True

    Resume LoiCT

End Sub
Mình sửa lại rồi như nó hiện lên thông báo không như yêu cầu,...!!View attachment 124707 và nó lại tiếp tục thực hiện code mặc dù code không đúng (tiếp tục thực hiện ở đây là nó vẫn mở Workbooks("BAO CAO.xls") lên)!!
Như ví dụ bài 1: nếu như code sai (tức là Workbooks("DON HANG.xls") không có Sheets("sheet2")) thì nó sẽ hiện lên thông báo là MsgBox "Khong xuat duoc du lieu, kiem tra lai!! View attachment 124708 và kết thúc (ko cho thực hiện code)...
chân thành cảm ơn!!
 
Upvote 0

Bài viết mới nhất

Back
Top Bottom