Ghi macro (Record Macro) là một " />
RaoVat24h
Excel Office

Bài 2. Ghi macro

Advertisement
 Ghi macro (Record Macro) là một công cụ rất hữu ích trong Excel VBA, nó ghi lại mọi thao tác của bạn trên bảng tính Excel.
Bạn chỉ cần ghi lại một tác vụ (một hoặc nhiều thao tác) thực hiện với bảng tính Excel. Tiếp đó, bạn gán nó (assign macro) vào một nút lệnh rồi click nút lệnh đó để lặp lại tác vụ vừa được ghi.
    Mặt khác, khi bạn không rõ, không biết tạo một chương trình (tác vụ) cụ thể trong VBA thì bạn hãy sử dụng chức năng ghi macro. Sau khi bạn ghi macro xong, bạn có thể vào cửa sổ VBA để xem chi tiết macro đó.
    Tuy nhiên, macro được tạo ra bởi việc ghi macro cũng có nhược điểm. Đó là, macro đó áp dụng cụ thể với trường hợp bạn vừa thao tác và ghi lại, câu lệnh chưa tối ưu, không áp dụng được vùng dữ liệu khác… nên cần phải hiệu chỉnh với mục đích cụ thể.

Cách thực hiện:

– Trên menu Developer, click nút Record Macro.

– Cửa sổ Record Macro hiện ra. Đặt tên cho macro, thiết lập phím tắt để chạy (Run) macro, thiết lập nơi hiệu lực của macro, miêu tả…
Rồi click OK.

– Khi đó chức năng Record Macro bắt đầu hoạt động, nhiệm vụ của bạn khi đó là thực hiện các thao tác cần ghi lại trên bảng tính Excel.

Sau khi thao tác xong, bạn click nút Stop Recording trên menu Developer để kết thúc việc ghi macro.

(Ví dụ ở đây, ta nhập số thứ tự từ 1 tới 5 vào các ô [A2:A6])

– Để xem code mà macro vừa được ghi lại, bạn vào cửa sổ VBA (nhấn Alt+F11)

– Để gán macro vừa được ghi vào nút lệnh, ta chèn một shape hình chữ nhật rồi assign macro “Macro1” vào.
– Chạy thử Macro1: Xóa vùng dữ liệu ở [A2:A6] rồi click vào nút lệnh vừa tạo)
Rate this post

DienDan.Edu.Vn

DienDan.Edu.Vn Cám ơn bạn đã quan tâm và rất vui vì bài viết đã đem lại thông tin hữu ích cho bạn.
DienDan.Edu.Vn! là một website với tiêu chí chia sẻ thông tin,... Bạn có thể nhận xét, bổ sung hay yêu cầu hướng dẫn liên quan đến bài viết. Vậy nên đề nghị các bạn cũng không quảng cáo trong comment này ngoại trừ trong chính phần tên của bạn.
Cám ơn.

Đăng bình luận

(+84) (901) 369.468