Trang này được dịch từ tiếng Anh để thuận tiện. Bản gốc tiếng Anh là bản chính xác nhất và, nếu hai bản khác nhau, bản đó là bản có hiệu lực.

Cách tự động hóa nhập liệu trên Windows không cần lập trình

Ghi lại một lượt thao tác bằng tay, làm cho nó vẫn hoạt động khi cửa sổ bị di chuyển, và để nó tự lặp lại trong khi bạn làm việc khác.

Cập nhật ngày 18 tháng 9 năm 2026 · Ghi, chỉnh sửa, phát lại và neo hình ảnh đều miễn phí trong Myna Recorder, không giới hạn thời gian.

1. Công việc

Mô hình luôn giống nhau: một giá trị nằm ở một nơi, một biểu mẫu cần nó ở nơi khác, và có hai trăm mục như vậy. Sao chép số hóa đơn, dán vào ô tìm kiếm, nhấn Enter, nhấp Approve, chờ dấu tích xanh, rồi sang mục tiếp theo. Việc này không cần lập trình để tự động hóa. Bạn chỉ cần một công cụ ghi, một cách nhấp vào đối tượng thay vì vào điểm pixel, và một cách để lặp lại.

2. Ghi một lượt

  1. Tắt ghi chuyển động chuột

    Settings → Recording. Không có chuyển động, macro chỉ là một danh sách ngắn các cú nhấp và phím đi thẳng đến từng mục tiêu. Chỉ ghi chuyển động khi vẽ hoặc di chuột qua.

  2. Nhấn F2, làm một mục bằng tay, nhấn F3

    Việc ghi là toàn cục, nên nó ghi lại thao tác của bạn trong mọi ứng dụng, với đúng thời gian gốc.

  3. Nhấn F4 để phát lại, F6 để dừng

    Hãy ghi nhớ phím Stop trước tiên. Phím này vẫn hoạt động ngay cả khi Recorder không phải là cửa sổ đang hoạt động.

Kết quả hiển thị theo hai cách: dưới dạng danh sách bước mà bạn có thể sắp xếp lại và chỉnh thời gian, và dưới dạng kịch bản đọc được trong tab Script.

3. Làm cho macro vẫn chạy khi cửa sổ bị di chuyển

Một cú nhấp đã ghi là một vị trí tuyệt đối trên màn hình. Di chuyển cửa sổ, đổi độ phân giải, hoặc chạy trên máy tính của đồng nghiệp, và nó sẽ nhấp nhầm chỗ. Cách khắc phục là neo hình ảnh: trong chế độ xem Images, chụp nút Approve thành vùng ảnh cắt và đặt tên cho nó. Khi đó bước sẽ trở thành:

with section("One invoice"):
    click_crop("Search box")
    type_text("${number}")
    press("enter")
    wait_for("Result row", timeout_ms=10000, abort=True)
    click_crop("Approve")
    wait_for("Green tick", timeout_ms=10000, abort=True)

wait_for tạm dừng cho đến khi hình ảnh xuất hiện, nên macro không còn là một canh bạc về việc ứng dụng phản hồi nhanh đến đâu hôm nay. Hãy cắt vùng ảnh thật sát: chỉ giữ phần đặc trưng và không gì khác. Hướng dẫn sử dụng đề cập đến độ tin cậy, vùng và cách khớp màu so với hình dạng.

4. Cung cấp dữ liệu cho macro

Recorder đọc giá trị từ màn hình thay vì từ tệp. Trỏ read_text vào ô hoặc trường chứa giá trị tiếp theo, lưu vào một biến, và dùng ${name} trong bất kỳ văn bản nào bạn gõ:

number = read_text(region=(120, 300, 160, 28), single_line=True)
click_crop("Search box")
type_text("${number}")

Luôn chỉ định vùng cho read_text. Bộ đọc tích hợp chạy trên máy tính của bạn và không tốn phí; một bộ đọc cục bộ thứ hai và một bộ đọc AI dành cho các văn bản mà bộ đầu tiên đọc sai. Số có thể được làm sạch bằng .to_number() và so sánh. Toàn bộ chủ đề có tại đọc văn bản từ màn hình.

5. Lặp lại

  • Repeat trên thanh công cụ chạy macro số lần đã đặt; 0 nghĩa là chạy cho đến khi bạn dừng.
  • Để lặp trong một lần chạy, dùng các khối vòng lặp. Danh sách lệnh bên cạnh trình soạn thảo hiển thị từng khối cùng một ví dụ minh họa.
  • Speed điều chỉnh các khoảng chờ đã ghi từ 0,25× đến 10×. Nó không thể làm ứng dụng phản hồi nhanh hơn, vì vậy nếu macro bị lỗi ở 4× thì cách sửa là wait_for, không phải chạy chậm hơn.
  • Chuyển sang mục tiếp theo như cách bạn làm bằng tay: nhấn Down trong danh sách, hoặc nhấp vào vùng ảnh cắt của hàng tiếp theo.

6. Bắt sự cố

abort=True trên wait_for sẽ dừng lần chạy khi hình ảnh không bao giờ xuất hiện, thay vì nhấn Approve trên nhầm bản ghi. on_fail="again" nhảy đến một bước có nhãn để thử lại. Với hộp thoại xuất hiện mỗi sáng một lần, hãy thêm một hàng giám sát: nó tìm hình ảnh lỗi trong suốt lần chạy và có thể hiện cửa sổ bật lên, nhắn cho bạn qua Telegram hoặc Discord kèm ảnh chụp màn hình, hoặc dừng macro. Hàng giám sát thuộc gói Basic.

7. Hoặc mô tả và để AI viết

Với gói Pro, trợ lý sẽ viết kịch bản từ mô tả. Hãy chụp các vùng ảnh cắt trước, rồi mô tả màn hình trông như thế nào, không chỉ mục tiêu: "nhấp vào ô Search box, gõ số, nhấn Enter, chờ hàng kết quả, nhấp Approve, chờ dấu tích xanh" sẽ cho ra một macro hoạt động; "xử lý các hóa đơn" sẽ nhận lại một câu hỏi. Không có gì được đưa vào trình soạn thảo cho đến khi bạn nhấn Use, và mọi phản hồi đều được trình biên dịch kiểm tra trước.

8. Chuyển cho đồng nghiệp

File → Export as Program… biến macro thành một tệp .exe duy nhất, bên trong có các vùng ảnh cắt và bộ đọc văn bản cục bộ, để người thực sự xử lý hóa đơn có thể chạy mà không cần cài đặt gì. Các bước có trong chuyển macro thành .exe.