Tài liệu RunMacro
Tạo robot đầu tiên, rồi tiến xa theo nhu cầu.
Hướng dẫn rõ ràng từng bước để tạo, chạy và cải thiện robot cho công việc máy tính lặp lại.
Rẽ nhánh điều kiện theo phần tử Desktop (Smart Desktop IF) trong RunMacro
Smart Desktop IF là lệnh rẽ nhánh điều kiện thông minh trong RunMacro dựa trên sự tồn tại, văn bản, trạng thái enabled hoặc checked của phần tử giao diện Desktop.
Điều kiện cần#
- Ứng dụng Desktop đang chạy trên màn hình.
- Kịch bản đã có sẵn các nhãn (Label) để nhảy tới.
Chế độ hỗ trợ#
- Chế độ Desktop — Kiểm tra trực tiếp các thuộc tính UIA mà không can thiệp vào giao diện người dùng.
Chức năng này làm gì#
Lệnh Smart Desktop IF kiểm tra trạng thái thực tế của các phần tử giao diện Desktop thông qua Microsoft UI Automation và rẽ nhánh luồng chạy macro dựa trên kết quả logic. Các điều kiện hỗ trợ bao gồm: kiểm tra Phần tử có tồn tại (element_exists), Phần tử không tồn tại (element_not_exists), Văn bản chứa từ khóa (text_contains), Văn bản khớp chính xác (text_equals), Nút có cho phép bấm (is_enabled), hoặc Hộp kiểm có đang chọn (is_checked). Khi điều kiện thỏa mãn, macro sẽ nhảy đến nhãn (Label) chỉ định hoặc thực hiện khối lệnh tương ứng.
Hình ảnh & video#

Khi nào nên dùng#
- Kiểm tra xem hộp thoại thông báo lỗi hoặc cảnh báo 'Bạn có chắc chắn muốn xóa?' có xuất hiện hay không để bấm xác nhận.
- Kiểm tra nút 'Thanh toán' hoặc 'Lưu' có đang bật (Đã bật) hay đang bị mờ (Đã tắt) trước khi click.
- Rẽ nhánh xử lý khi ô trạng thái đơn hàng hiển thị 'Đã hoàn thành' hoặc 'Chờ xử lý'.
- Kiểm tra xem hộp kiểm 'Đã gửi hóa đơn' có được tích hay chưa để tránh xuất trùng lặp.
Khi nào không nên dùng#
- Kiểm tra phần tử trên trang web trình duyệt (dùng Smart HTML IF).
- Kiểm tra giá trị biến thuần túy không gắn với UI (dùng lệnh Kiểm tra biến If Variable).
Các bước cấu hình#
- Trong RunMacro, chọn nhóm Luồng › Smart Desktop IF.
- Bấm 🎯 Chỉ điểm phần tử (Pick Element) và chọn phần tử cần kiểm tra trên màn hình.
- Chọn Điều kiện (Condition): Tồn tại, Không tồn tại, Chứa văn bản, Bằng văn bản, Đang bật (Đã bật), hoặc Đang chọn (Checked).
- Nếu chọn điều kiện văn bản, nhập giá trị cần so sánh tại ô Giá trị so sánh (Condition Value) (hỗ trợ biến
{var}). - Chọn nhãn nhảy tới tại Nhãn khi ĐÚNG (If Label) và (tùy chọn) Nhãn khi SAI (Else Label).
- Thiết lập Thời gian chờ kiểm tra (Timeout ms) (mặc định 1500ms).
- Bấm Lưu.
Giải thích từng tùy chọn#
Kết quả mong đợi#
Kịch bản nhảy chính xác đến nhãn tương ứng theo đúng trạng thái thực tế của phần tử UI.
Ví dụ thực tế#
Ví dụ: Tự động đóng popup thông báo nếu xuất hiện#
- Thêm lệnh Smart Desktop IF.
- Chỉ điểm vào nút 'Bỏ qua' hoặc tiêu đề của popup quảng cáo/thông báo.
- Chọn điều kiện Phần tử tồn tại (element_exists), đặt Timeout là 1000ms.
- Đặt If Label là
lbl_dong_popup, Else Label làlbl_tiep_tuc. - Dưới nhãn
lbl_dong_popup, đặt lệnh Smart Click vào nút Đóng.
Giới hạn và trường hợp lỗi#
- Ứng dụng chạy quyền Administrator đòi hỏi RunMacro cũng phải mở Run as Admin để đọc trạng thái UIA.
Mẹo & lỗi thường gặp#
Thông tin kiểm chứng#
commands/smart_desktop_if.py· xác minh 2026-09-30
RunMacro