Bắt đầu macro khi một điều kiện trong bảng Excel được đáp ứng

Mục lục

Bạn có thể sử dụng thủ thuật để bắt đầu macro ngay khi hàm IF trong bảng tính Excel của bạn mang lại một kết quả nhất định

Một macro sẽ được thực thi trong một bảng Excel ngay sau khi một hàm bảng IF trả về một giá trị logic. Nếu không, một văn bản chỉ nên được hiển thị.

Bạn giải quyết vấn đề này với một hàm VBA do người dùng xác định. Bạn đang làm việc với một thủ tục Hàm thay vì một thủ tục Con.

Nếu đã có macro mà bạn muốn bắt đầu bằng hàm IF, bạn có thể sao chép mã vào thủ tục Hàm hoặc gọi thủ tục con từ nó.

Một macro có tên “Startmacro” được sử dụng làm ví dụ và chỉ gọi một hộp thoại đơn giản. Làm theo các bước sau:

  1. Đầu tiên hãy khởi động trình soạn thảo VBA. Bạn có thể thực hiện việc này trong tất cả các phiên bản Excel bằng tổ hợp phím ALT F11.
  2. Chọn lệnh INSERT - MODULE để chèn một trang mô-đun mới.

Nhập các lệnh VBA sau:

Hàm công khai Startmakro () As String
Gọi cho quảng cáo
Start macro = "Đã bắt đầu."
Kết thúc chức năng
Màn hình phụ ()
MsgBox "Đã khởi động macro"
Kết thúc Sub

Mã chương trình bao gồm hai phần riêng biệt. Phân đoạn đầu tiên đại diện cho chức năng bảng STARTMAKRO mới. Đoạn thứ hai được sử dụng để hiển thị văn bản "Macro đã bắt đầu."

Sau khi nhập các lệnh, hãy gọi lệnh ĐÓNG VÀ QUAY LẠI VÀO MICROSOFT EXCEL trong menu TỆP trong trình soạn thảo VBA. Điều này đưa bạn trở lại bàn của bạn.

Cách đưa macro vào hàm IF

Để xem macro có hoạt động bình thường hay không, hãy nhập hàm sau vào ô A2 của bảng:

= IF (A1 = 1; startmakro (); "Chưa bắt đầu.")

Nếu bạn nhập số 1 vào ô A1, macro sẽ được gọi bởi hàm do người dùng xác định của bạn. Cửa sổ thông báo xuất hiện như trong hình sau:

Sau đó, có dòng chữ "Đã bắt đầu." Trong phòng giam. Hàm bảng tính do người dùng xác định đã trả lại kết quả này cho Excel.

Nếu ô A1 có nội dung khác 1, macro không được bắt đầu. Trong trường hợp này, hàm IF đặt văn bản "Chưa bắt đầu". kết quả là

Đường dẫn được trình bày là một cách thực hành mà Microsoft không khuyến khích. Các cửa sổ thông báo không được hiển thị trong các chức năng do người dùng xác định.

Không cần thiết phải tách biệt hai macro START MACRO và DISPLAY. Bạn cũng có thể thực hiện mà không cần lệnh CALL trong macro VBA và bao gồm các lệnh cho chương trình con trực tiếp trong chương trình con FUNCTION.

Bạn sẽ giúp sự phát triển của trang web, chia sẻ trang web với bạn bè

wave wave wave wave wave