Cách ghi lại và tự động hóa thao tác chuột, bàn phím
Ghi macro là cơ chế lưu nguyên các thao tác bạn thực hiện bằng chuột và bàn phím dưới dạng một “chuỗi bước” kèm theo thời điểm thực hiện. Khi chạy macro đã ghi, bạn có thể tái hiện chính xác cùng một chuỗi thao tác bao nhiêu lần tùy ý, nhanh và chính xác hơn con người rất nhiều. Bạn không cần kiến thức lập trình mà chỉ cần thực hiện công việc thường ngày bằng tay một lần, vì vậy đây có thể xem là cách dễ nhất để bắt đầu tự động hóa. Bài viết này sẽ lần lượt giải thích toàn bộ quy trình, từ ghi, chạy lại đến tinh chỉnh chi tiết.
Bước 1: Chuẩn bị ghi
Chỉ cần chuẩn bị một chút trước khi bắt đầu ghi là bạn có thể tăng đáng kể tỷ lệ thành công. Trước tiên, hãy mở sẵn các ứng dụng và cửa sổ liên quan đến công việc cần tự động hóa, rồi đặt chúng ở vị trí thường dùng. Tiếp theo, hãy phóng to cửa sổ hết mức có thể. Nhiều macro hoạt động dựa trên tọa độ màn hình, vì vậy nếu vị trí hoặc kích thước cửa sổ lúc ghi khác với lúc chạy lại, macro có thể nhấp vào vị trí ngoài ý muốn. Việc phóng to cửa sổ sẽ giảm thiểu tình trạng “lệch” này.
Ngoài ra, bạn nên diễn tập trước trong đầu một lần các bước sẽ ghi để thao tác trôi chảy hơn. Nếu sắp xếp trước “cần nhấn nút nào và theo thứ tự nào”, bạn sẽ tránh được việc do dự và vô tình ghi thêm thao tác thừa. Ngay cả khi mắc lỗi giữa chừng, bạn vẫn có thể xóa riêng những bước không cần thiết sau đó, vì vậy không cần quá căng thẳng.
Bước 2: Tiến hành ghi
Khi đã chuẩn bị xong, hãy nhấn phím tắt ghi (F9 trong makuroku). Sau đó, bạn chỉ cần làm việc như bình thường: mở tệp, chọn vùng, sao chép, chuyển sang cửa sổ khác, dán và lưu. Từng cú nhấp chuột và lần nhấn phím sẽ được ghi lại theo thứ tự. Khi hoàn tất công việc, hãy nhấn lại phím tắt đó để dừng ghi. Như vậy, toàn bộ chuỗi thao tác bạn vừa thực hiện đã được lưu thành một macro có thể tái sử dụng.
Một mẹo nhỏ khi ghi là hãy thao tác với nhịp độ trôi chảy để tránh xuất hiện “thời gian chờ” thiếu tự nhiên giữa các lần nhấp. Tuy nhiên, nếu cần chờ ứng dụng tải hoặc màn hình chuyển đổi, khoảng chờ đó cũng sẽ được ghi nguyên trạng. Trên thực tế, chính những khoảng “chờ” này thường giúp việc chạy lại ổn định hơn, vì vậy bạn không cần cố thao tác thật nhanh.
Bước 3: Đặt tốc độ và vòng lặp rồi chạy lại
Để chạy lại, bạn chỉ cần nhấn phím tắt chạy (F5 trong makuroku). Tuy nhiên, giá trị thực sự của macro nằm ở khả năng đặt “tốc độ” và “số lần lặp (vòng lặp)” trước khi chạy. Nếu tăng tốc độ lên gấp đôi, công việc sẽ hoàn tất trong một nửa thời gian so với lúc ghi. Ngược lại, nếu ứng dụng phản hồi chậm, bạn có thể giảm tốc độ để tránh bỏ sót thao tác.
Việc thiết lập số lần lặp đặc biệt hiệu quả đối với khối lượng lớn công việc lặp đi lặp lại. Chẳng hạn, nếu cho macro “xử lý 1 chứng từ” lặp 100 lần, bạn có thể hoàn tất việc xử lý 100 chứng từ chỉ trong vài phút. Công việc vốn mất một giờ nếu làm thủ công giờ chỉ cần ghi lại một lần, sau đó chỉ việc chờ phát lại hoàn tất. Chính ý tưởng “ghi một lần, phát lại bao nhiêu lần cũng được” là cốt lõi của việc tạo thêm thời gian nhờ tự động hóa.
Nguyên nhân khiến bản ghi bị lệch và cách khắc phục
Khi bắt đầu sử dụng macro, vấn đề đầu tiên mà nhiều người gặp phải là “vị trí nhấp chuột bị lệch khi phát lại”. Nguyên nhân thường là trạng thái màn hình lúc ghi và lúc phát lại không giống nhau. Cụ thể, độ phân giải hoặc tỷ lệ hiển thị có thể đã thay đổi, vị trí hay kích thước cửa sổ có thể khác đi, hoặc macro được phát lại trên một màn hình khác.
Có một số biện pháp khắc phục. Cách đơn giản nhất là phóng to cửa sổ khi cả ghi lẫn phát lại và sử dụng cùng một thiết lập màn hình. Nếu vẫn chưa giải quyết được, hãy ghi lại bằng “chế độ tọa độ tương đối” lấy cửa sổ làm mốc. Khi đó, hệ thống ghi vị trí tương đối bên trong cửa sổ thay vì tọa độ trên toàn màn hình, nên ít bị ảnh hưởng bởi sự khác biệt về độ phân giải. Cách chắc chắn hơn nữa là dùng tính năng “nhận dạng hình ảnh” được giới thiệu tiếp theo, cho phép nhấp dựa trên hình thức hiển thị thay vì vị trí.
Nâng cao mức độ hoàn thiện bằng cách chỉnh sửa các bước sau khi ghi
Ngay cả khi vô tình nhấn nhầm nút một lần trong lúc ghi, bạn cũng không cần làm lại từ đầu. Trong makuroku, macro đã ghi có thể được chỉnh sửa sau theo từng bước. Bạn có thể xóa thao tác nhấp không cần thiết, đổi thứ tự, thêm thời gian chờ hoặc chỉ tinh chỉnh tọa độ của một bước cụ thể mà không cần ghi lại.
Khả năng chỉnh sửa sau khi ghi giúp nâng mức độ hoàn thiện của quy trình tự động hóa lên một bậc. Chẳng hạn, nếu tự thêm bước “chờ một chút cho đến khi hộp thoại lưu xuất hiện”, quá trình phát lại sẽ ổn định hơn. Ngoài ra, nếu chuyển macro đã ghi thành “script có thể chỉnh sửa”, bạn còn có thể bổ sung các xử lý nâng cao hơn như rẽ nhánh có điều kiện và vòng lặp. Trước tiên tạo khung bằng cách ghi thao tác, sau đó bổ sung chi tiết bằng chỉnh sửa hoặc chuyển thành script — cách tiếp cận hai giai đoạn này là con đường ngắn nhất để tạo ra quy trình tự động hóa có thể dùng trong công việc thực tế.
Cách xử lý thời gian chờ quyết định độ ổn định khi phát lại
Điểm dễ gây vướng mắc nhất ở macro dạng ghi thao tác là cách xử lý “thời gian chờ”. Con người thường vô thức đợi ứng dụng phản hồi hoặc màn hình chuyển xong rồi mới thực hiện thao tác tiếp theo. Tuy nhiên, macro đã ghi sẽ phát lại nguyên thời điểm của lúc ghi, nên chỉ cần môi trường phát lại phản hồi chậm hơn một chút là macro có thể cố nhấn vào “nút chưa xuất hiện” và thất bại.
Có hai cách khắc phục. Cách thứ nhất là tự thêm thời gian chờ cố định, tức bước WAIT. Nếu đặt “chờ 0,5 giây sau khi nhấp”, hệ thống có thể bù được một phần độ trễ. Cách thứ hai và chắc chắn hơn là chờ dựa trên trạng thái màn hình. Khi dùng điều kiện chờ như “chờ đến khi biểu tượng báo tải xong xuất hiện”, quy trình có thể chuyển sang bước tiếp theo đúng lúc ngay cả khi mạng hoặc ứng dụng phản hồi chậm, không chờ quá lâu cũng không chờ quá ít. Không quá lời khi nói rằng khả năng xây dựng một quy trình tự động hóa ổn định phụ thuộc vào cách thiết kế những khoảng chờ này.
Danh sách kiểm tra khi việc ghi thao tác không hoạt động đúng
Khi quá trình phát lại không diễn ra như mong đợi, số nguyên nhân có thể xảy ra thực ra ít hơn bạn nghĩ. Kiểm tra lần lượt các điểm sau sẽ giúp giải quyết phần lớn vấn đề.
- • Vị trí và kích thước cửa sổ khi ghi và khi phát lại có giống nhau không
- • Độ phân giải màn hình hoặc tỷ lệ hiển thị có bị thay đổi không
- • Trước khi nhấp có đủ thời gian chờ để đối tượng mục tiêu hiển thị không
- • Phần mềm bảo mật có đang chặn việc ghi hoặc gửi dữ liệu nhập không
- • Tốc độ phát lại có quá nhanh khiến ứng dụng không kịp phản hồi không
Nếu vấn đề vẫn chưa được giải quyết sau khi kiểm tra các mục này, việc thay những phần phụ thuộc vào tọa độ bằng nhận dạng hình ảnh sẽ rất hiệu quả. Nếu nhấp dựa trên “hình thức” thay vì “vị trí đang hiển thị”, quy trình tự động hóa sẽ ít bị ảnh hưởng hơn khi cửa sổ di chuyển hoặc độ phân giải thay đổi. Trước tiên, hãy dùng danh sách kiểm tra cơ bản để khoanh vùng vấn đề, sau đó chỉ tăng cường bằng nhận dạng hình ảnh cho những chỗ vẫn chưa ổn định. Tiến hành theo thứ tự này sẽ giúp bạn xây dựng một quy trình tự động hóa vững chắc một cách hiệu quả.
Những công việc phù hợp và không phù hợp với macro ghi thao tác
Macro ghi thao tác không phải là giải pháp vạn năng. Hiểu rõ những công việc mà loại macro này làm tốt hoặc không tốt sẽ giúp giảm bớt việc thử đi thử lại không cần thiết. Loại macro này phù hợp nhất với “công việc luôn diễn ra theo đúng một quy trình giống hệt nhau”. Mở cùng một màn hình, nhấp vào cùng một vị trí và nhập cùng một nội dung — những công việc cố định như vậy có thể được tự động hóa một cách tin cậy chỉ bằng cách ghi lại thao tác. Nhập dữ liệu vào một biểu mẫu cố định, gửi email theo mẫu và lưu tệp theo một quy trình định sẵn là những ví dụ điển hình.
Ngược lại, loại macro này không phù hợp với “công việc có tình huống thay đổi sau mỗi lần thực hiện”. Nếu số lượng dữ liệu cần xử lý khác nhau theo từng ngày, nội dung hiển thị trên màn hình thay đổi tùy tình huống hoặc cần đến phán đoán của con người, thì việc chỉ ghi và phát lại thao tác đơn giản sẽ không đủ. Tuy nhiên, điều đó không có nghĩa là “macro ghi thao tác hoàn toàn không thể làm được”. Nếu dùng thao tác ghi để tạo khung cơ bản, rồi chỉ bổ sung cho những phần thay đổi bằng nhánh điều kiện, vòng lặp trong tập lệnh hoặc nhận dạng hình ảnh, thì nhiều công việc vẫn có thể được tự động hóa.
Điều quan trọng là đừng tự gây áp lực phải “tự động hóa mọi thứ chỉ bằng thao tác ghi”. Hãy tách công việc thành “phần cố định” và “phần thay đổi”: dùng thao tác ghi cho phần cố định và áp dụng một chút điều chỉnh cho phần thay đổi. Khi biết cách phân biệt như vậy, bạn sẽ nhận ra rằng có rất nhiều công việc thoạt nhìn phức tạp nhưng vẫn có thể được tự động hóa — nhiều đến mức đáng ngạc nhiên.
Ngoài ra, hãy xem macro đã ghi là thứ cần được cải thiện dần trong quá trình sử dụng, chứ không phải “tạo xong là kết thúc”. Dù ban đầu hoạt động còn hơi vụng về, hãy chạy thử trong thực tế rồi chỉnh sửa những điểm chưa ổn — chẳng hạn thời gian chờ chưa đủ hoặc bị dừng giữa chừng. Qua đó, macro sẽ dần trở nên ổn định và thiết thực. Thay vì chần chừ vì muốn đạt đến sự hoàn hảo, hãy tạo trước một phiên bản có thể hoạt động rồi tiếp tục hoàn thiện nó; thái độ này là bí quyết để duy trì lâu dài.
Cách hiểu về tốc độ ghi và tốc độ phát lại
Tốc độ phát macro là một yếu tố quan trọng ảnh hưởng đến hiệu quả tự động hóa. Bạn có thể phát lại đúng tốc độ lúc ghi, nhưng nhiều công cụ cũng cho phép tự do điều chỉnh tốc độ phát. Tăng tốc độ sẽ giúp công việc hoàn tất nhanh hơn, nhưng nếu quá nhanh, ứng dụng có thể không phản hồi kịp và thao tác nhấp có thể bị hụt. Ngược lại, nếu ưu tiên độ chắc chắn, đặt tốc độ chậm hơn một chút sẽ an toàn hơn.
Bạn nên bắt đầu bằng cách xác nhận macro hoạt động ổn định ở tốc độ bình thường (1×), sau đó tăng dần tốc độ để tìm giới hạn cao nhất mà không gây lỗi. Tốc độ tối ưu thay đổi tùy theo nội dung công việc và tốc độ phản hồi của ứng dụng. Trong các vòng lặp xử lý lượng lớn dữ liệu, dù chỉ tiết kiệm một chút thời gian cho mỗi mục cũng có thể tạo ra khác biệt lớn trên tổng thể. Hãy điều chỉnh sự cân bằng giữa “tốc độ” và “độ chắc chắn” cho phù hợp với công việc của bạn.
Kiểm thử macro đã ghi một cách an toàn
Chạy ngay macro vừa tạo trên dữ liệu thực tế là rất nguy hiểm. Tự động hóa có thể thực hiện thao tác “nhanh chóng, chính xác và lặp lại bao nhiêu lần cũng được”, vì vậy nếu quy trình có sai sót, nó sẽ nhanh chóng thực hiện hàng loạt xử lý không chính xác. Để tránh hậu quả không thể khắc phục, hãy luôn tuân theo quy trình kiểm thử.
Có ba bí quyết để kiểm thử an toàn. Thứ nhất, hãy thử bằng dữ liệu giả dành cho kiểm thử hoặc bản sao của tệp. Nếu không dùng trực tiếp dữ liệu thực tế, thất bại cũng không gây thiệt hại. Thứ hai, lúc đầu hãy đặt số lần lặp là 1 và tốc độ chậm, rồi quan sát từng chuyển động bằng mắt. Thứ ba, sau khi xác nhận mọi thứ hoạt động đúng như dự kiến, hãy tăng dần số lần và tốc độ để tiến gần đến điều kiện vận hành thực tế. Thực hiện theo quy trình thận trọng này sẽ giúp bạn yên tâm đưa tự động hóa vào công việc.
Kết hợp nhiều macro để sử dụng
Khi đã quen với việc biến một công việc thành một macro, bước tiếp theo là kết hợp nhiều macro. Thay vì tạo một macro khổng lồ cho một quy trình dài, việc chia thành các macro nhỏ theo từng nhóm có ý nghĩa sẽ giúp công tác quản lý sau này dễ dàng hơn nhiều. Chẳng hạn, nếu chia thành ba macro nhỏ là “lấy dữ liệu”, “tổng hợp” và “xuất báo cáo”, khi chỉ muốn thay đổi cách tổng hợp, bạn chỉ cần thay thế riêng phần đó.
Một lợi ích khác của việc chia thành các macro nhỏ là có thể tái sử dụng chúng như những thành phần. Sau khi tạo một macro “gửi email theo mẫu”, bạn có thể gọi lại nhiều lần trong nhiều công việc khác nhau. Khi các thao tác thường dùng được thành phần hóa và tích lũy dần, bạn có thể nhanh chóng hoàn thành một quy trình tự động hóa mới chỉ bằng cách kết hợp các thành phần hiện có. Thiết kế macro như “thành phần có thể tái sử dụng” thay vì “công cụ dùng một lần” sẽ nâng cao đáng kể năng suất tự động hóa.
makuroku còn có lệnh cho phép gọi một macro hoặc tập lệnh khác từ trong tập lệnh. Nhờ đó, bạn có thể kết hợp các thành phần nhỏ để xây dựng quy trình tự động hóa lớn hơn. Ban đầu, mỗi công việc chỉ cần một macro là đủ; nhưng khi số lượng quy trình tự động hóa tăng lên, việc áp dụng tư duy “thành phần hóa và kết hợp” sẽ giúp bạn tự động hóa cả những nghiệp vụ phức tạp mà vẫn tổ chức chúng một cách gọn gàng.
Điều quan trọng là không nên ngay lập tức hướng đến một hệ thống lớn và phức tạp. Trước tiên, hãy tự động hóa chắc chắn một công việc; khi số lượng tăng lên thì sắp xếp lại. Nếu tiến theo dòng chảy tự nhiên này, hệ thống tự động hóa của bạn sẽ dần được hoàn thiện một cách vững chắc mà không gây quá tải.
Sắp xếp macro thành “hộp công cụ dành riêng cho bạn”
Khi macro đã hoạt động trơn tru, hãy đặt cho nó một cái tên rõ ràng để sau này chính bạn cũng có thể hiểu được rồi lưu lại. Lý tưởng nhất là tên cho biết ngay nội dung công việc, chẳng hạn như “tổng hợp báo cáo doanh số” hoặc “lưu hóa đơn dưới dạng PDF”. Khi tích lũy từng macro theo cách này, cuối cùng bạn sẽ có một “hộp công cụ tự động hóa” dành riêng cho mình.
Một công việc từng mất vài phút nay có thể hoàn tất chỉ bằng một phím tắt. Những khoản thời gian tiết kiệm nhỏ ấy tích lũy lại sẽ tạo ra nhiều khoảng trống đáng kể vào cuối ngày. Với makuroku, bạn có thể dùng thử miễn phí trên Windows mọi tính năng trong một ứng dụng duy nhất, từ ghi lại, phát lại, chỉnh sửa sau khi ghi và tạo tập lệnh cho đến chạy theo lịch. Hãy bắt đầu xây dựng bộ công cụ của riêng bạn bằng cách ghi lại một công việc trong ngày hôm nay.
Dùng thử miễn phí
Tự động hóa với makuroku
makuroku ghi lại chuột và bàn phím của bạn, sau đó phát lại tự động. Thêm script SCR và tích hợp AI (MCP) khi cần thêm. Tất cả tính năng miễn phí trên Windows.
Bài viết khác