Mục lục:
Video: Hướng dẫn sử dụng Macro trong Excel hiệu quả nhất 2025
Trong Excel, bạn có thể đang làm việc trên dữ liệu nhạy cảm mà bạn sẽ muốn tiết kiệm mỗi khi một tế bào hoặc một dải ô cụ thể thay đổi. Macro này cho phép bạn xác định một dải ô mà khi thay đổi, nó sẽ buộc bảng tính phải lưu lại.
Trong ví dụ được hiển thị, bạn muốn bảng tính để tiết kiệm khi chỉnh sửa được thực hiện cho bất kỳ ô nào trong khoảng C5: C16.
Cách macro hoạt động
Bí mật của mã này là phương pháp giao nhau. Bởi vì bạn không muốn lưu worksheet khi bất kỳ thay đổi nào của ô cũ, bạn sử dụng phương thức Intersect để xác định xem ô đích (ô đã thay đổi) giao với dãy được chỉ định là phạm vi kích hoạt (C5: C16 trong trường hợp này).
Phương thức Intersect trả về một trong hai điều: một đối tượng Range xác định giao điểm giữa hai dãy, hoặc không có gì. Vì vậy, về bản chất, bạn cần ném tế bào đích vào phương thức Intersect để kiểm tra giá trị của Nothing. Tại thời điểm đó, bạn có thể quyết định có nên lưu bảng tính.
Private Sub Worksheet_Change (ByVal Target As Range) 'Bước 1: Phạm vi thay đổi có giao nhau không? Bước 2: Nếu không có giao lộ, thủ tục thoát Exit Sub 'Bước 3: Nếu có một giao lộ, hãy lưu sổ kiểm việc Else ActiveWorkbook. Save 'Bước 4: Đóng ra câu lệnh If if End Sub
Trong bước 1, bạn chỉ cần kiểm tra để xem liệu tế bào đích (ô đã thay đổi) nằm trong dải được chỉ định bởi phương pháp giao nhau. Giá trị của Nothing có nghĩa là ô đích nằm ngoài phạm vi được chỉ định.
Bước 2 ép macro dừng lại và thoát khỏi thủ tục nếu không có giao điểm giữa tế bào đích và dải ô đã chỉ định.
Nếu có giao lộ, Bước 3 kích hoạt phương thức Lưu của bảng tính đang hoạt động, ghi đè lên phiên bản trước đó.
Ở bước 4, bạn chỉ cần đóng báo cáo If. Mỗi lần bạn bắt đầu kiểm tra If-Then-Else, bạn phải đóng nó lại với một kết thúc Nếu tương ứng.
Cách sử dụng vĩ mô
Để thực hiện macro này, bạn cần sao chép và dán nó vào cửa sổ mã sự kiện Worksheet_Change. Đặt macro ở đây cho phép nó chạy mỗi khi bạn thực hiện bất kỳ thay đổi cho tờ:
-
Kích hoạt Visual Basic Editor bằng cách nhấn Alt + F11.
-
Trong cửa sổ dự án, tìm tên dự án / workbook của bạn và nhấp vào dấu cộng bên cạnh để xem tất cả các trang tính.
-
Nhấp vào bảng mà bạn muốn kích hoạt mã.
-
Trong danh sách Sự kiện thả xuống, chọn Sự kiện Thay đổi.
-
Nhập hoặc dán mã vào mô-đun mới tạo, thay đổi dải địa chỉ cho phù hợp với nhu cầu của bạn.
Nhập mã của bạn vào sự kiện Change Worksheet.