D
Deleted member 1392
Guest
Khi thiết lập sự kiện chạy code khi đóng file. Các bạn sẽ nghĩ ngay đến Workbook_BeforeClose. Tuy nhiên, khi đóng file mà file các bạn hiện lên một thông báo như thế này
Khi thông báo này được hiện lên, bắt kể bạn có đóng file thật hay bỏ đóng thì sự kiện Workbook_BeforeClose vẫn sẽ được thực thi. Đây chính là điểm hạn chế cố hữu trong sự kiện Workbook_BeforeClose.
Để khắc phục, ta có thể dùng một chuỗi sự kiện kết hợp như sau trong Thisworkbook:
Nguồn tham khảo:
Bạn cần đăng nhập để thấy hình ảnh
Khi thông báo này được hiện lên, bắt kể bạn có đóng file thật hay bỏ đóng thì sự kiện Workbook_BeforeClose vẫn sẽ được thực thi. Đây chính là điểm hạn chế cố hữu trong sự kiện Workbook_BeforeClose.
Để khắc phục, ta có thể dùng một chuỗi sự kiện kết hợp như sau trong Thisworkbook:
Mã:
Private WorkbookClosing As Boolean
Private Sub Workbook_BeforeClose(Cancel As Boolean)
WorkbookClosing = True
End Sub
Private Sub Workbook_Deactivate()
On Error Resume Next
If WorkbookClosing And ThisWorkbook.Name = ActiveWindow.Caption Then
Workbook_Closing
Else
WorkbookClosing = False
End If
End Sub
Private Sub Workbook_Closing()
'//Code khi đóng file thực sự
MsgBox "Workbook_Closing event."
End Sub
Bạn cần đăng nhập để thấy link