Tóm tắt
Trong Microsoft Excel, bạn có thể tạo macro Microsoft Visual Basic for Applications (VBA) chặn lời nhắc Lưu Thay đổi khi bạn đóng sổ làm việc. Điều này có thể được thực hiện bằng cách chỉ định trạng thái của thuộc tính Đã lưu của sổ làm việc hoặc bằng cách chặn tất cả các cảnh báo cho sổ làm việc.
Xem thêm thông tin
LƯU Ý:Microsoft chỉ cung cấp các ví dụ lập trình để minh họa mà không cần bảo hành dù là rõ ràng hay ngụ ý. Điều này bao gồm, nhưng không giới hạn ở, bảo hành ngụ ý về khả năng bán được hoặc sự thích hợp cho một mục đích cụ thể. Bài viết này giả định rằng bạn đã quen thuộc với ngôn ngữ lập trình đang được chứng minh và với các công cụ được sử dụng để tạo và gỡ lỗi thủ tục. Kỹ sư hỗ trợ của Microsoft có thể giúp giải thích chức năng của một quy trình cụ thể. Tuy nhiên, họ sẽ không sửa đổi các ví dụ này để cung cấp chức năng bổ sung hoặc xây dựng các thủ tục để đáp ứng các yêu cầu cụ thể của bạn.
Để chuẩn bị cho việc thực hiện một trong các ví dụ dưới đây, trước tiên hãy thực hiện các bước sau:-
Khởi động Excel và mở sổ làm việc mới.
-
Nhấn ALT+F11 để khởi động trình soạn thảo Visual Basic.
-
Trên menu Chèn, bấm vào Mô-đun.
-
Nhập mã macro mẫu vào trang tính mô-đun.
-
Nhấn ALT+F11 để trở về Excel.
-
Trong Microsoft Office Excel 2003 và trong các phiên bản Excel cũ hơn, chọn Macrotừ menu Công cụ, rồi bấm macro.
Trong Microsoft Office Excel 2007, bấm macro trong nhóm Mã trên tab Nhà phát triển. Nếu tab Nhà phát triển không sẵn dùng, hãy cân nhắc thực hiện thao tác này: một. Bấm vào Microsoft Office Button, rồi bấm vào Tùy chọn Excel. b. Trong danh mục Phổ biến, dưới Tùy chọn hàng đầu để làm việc với Excel, bấm để chọn Hiển thị Tab Nhà phát triển trong hộp kiểm Dải băng, rồi bấm OK. -
Chọn macro bạn muốn, rồi bấm vào Chạy.
Thuộc tính Saved trả về giá trị False nếu các thay đổi đã được thực hiện cho sổ làm việc kể từ lần lưu gần nhất.Auto_Close định một macro sẽ chạy bất cứ khi nào sổ làm việc được đóng lại. Khi làm như vậy, bạn có thể kiểm soát cách xử lý tài liệu khi người dùng đóng tài liệu trong Excel.
Bạn có thể dùng tên định tuyến con dành riêngVí dụ 1: Đóng sổ làm việc mà không lưu thay đổi
Để bắt buộc sổ làm việc đóng mà không lưu bất kỳ thay đổi nào, hãy nhập mã sau đây vào mô-đun Visual Basic của sổ làm việc đó:
Sub Auto_Close()
ThisWorkbook.Saved = True
End Sub
Khi thuộc tính Đã lưu được đặt thành True, Excel sẽ phản hồi như thể sổ làm việc đã được lưu và không có thay đổi nào xảy ra kể từ lần lưu cuối.
Thuộc tính DisplayAlerts của chương trình có thể được sử dụng cho cùng một mục đích. Ví dụ: macro sau đây sẽ tắt DisplayAlerts, đóng sổ làm việc hiện hoạt mà không lưu thay đổi, rồi bật lại DisplayAlerts.Sub CloseBook()
Application.DisplayAlerts = False
ActiveWorkbook.Close
Application.DisplayAlerts = True
End Sub
Bạn cũng có thể sử dụng đối số SaveChanges của phương pháp Đóng.
Macro sau đây sẽ đóng sổ làm việc mà không lưu thay đổi:Sub CloseBook2()
ActiveWorkbook.Close savechanges:=False
End Sub
Ví dụ 2: Đóng sổ làm việc và lưu các thay đổi
Để bắt buộc sổ làm việc lưu thay đổi, hãy nhập mã sau đây vào mô-đun Visual Basic của sổ làm việc đó:
Sub Auto_Close()
Nếu ThisWorkbook.Saved = False Sau đó
ThisWorkbook.Save End If
End Sub
Quy trình con này kiểm tra xem tệp Đã lưu thuộc tính có được đặt là False hay không. Nếu vậy, sổ làm việc đã được thay đổi kể từ lần lưu cuối cùng và những thay đổi đó được lưu.