Cách viết quy trình xử lý sự kiện trong VBA Excel 2016

0
5

Bạn có tò mò làm thế nào để viết một thủ tục xử lý sự kiện trong VBA không? VBE giúp bạn ra ngoài khi bạn sẵn sàng viết một quy trình xử lý sự kiện; nó hiển thị một danh sách tất cả các sự kiện cho đối tượng được chọn.

Ở đầu mỗi cửa sổ Mã, bạn tìm thấy hai danh sách thả xuống:

  • Danh sách thả xuống Object (cái bên trái)
  • Danh sách thả xuống Thủ tục (cái bên phải)

Theo mặc định, danh sách thả xuống Đối tượng trong cửa sổ Mã sẽ hiển thị Chung.

Nếu bạn đang viết một trình xử lý sự kiện cho đối tượng ThisWorkbook, bạn cần nhấp vào ThisWorkbook trong cửa sổ Project và sau đó chọn Workbook từ trình đơn thả xuống Object (đó là lựa chọn duy nhất khác).

Nếu bạn đang viết một trình xử lý sự kiện cho một đối tượng Trang tính, bạn cần nhấp vào Trang tính cụ thể trong cửa sổ Dự án và sau đó chọn Trang tính từ danh sách thả xuống Đối tượng (một lần nữa, chỉ có lựa chọn khác).

Sau khi bạn chọn từ danh sách thả xuống Đối tượng, bạn có thể chọn sự kiện từ danh sách thả xuống Quy trình. Dưới đây là một số lựa chọn cho một sự kiện liên quan đến sách bài tập

VBA Excel là gì?

Khi bạn chọn một sự kiện từ danh sách, VBE sẽ tự động bắt đầu tạo quy trình xử lý sự kiện cho bạn. Đây là một tính năng rất hữu ích, bởi vì nó cho bạn biết chính xác các đối số phù hợp là gì.

Đây là một vấn đề nhỏ. Khi bạn lần đầu tiên chọn Sổ làm việc từ danh sách Đối tượng, VBE luôn giả định rằng bạn muốn tạo quy trình xử lý sự kiện cho sự kiện Mở và tạo nó cho bạn. Nếu bạn thực sự đang tạo một thủ tục Workbook_Open, điều đó tốt. Nhưng nếu bạn đang tạo một quy trình sự kiện khác, bạn cần xóa Workbook_Open Sub trống đã được tạo.

Tuy nhiên, sự giúp đỡ của VBE chỉ đi xa. Nó viết câu lệnh Sub và câu lệnh End Sub. Viết mã VBA đi giữa hai câu lệnh này là công việc của bạn.

Bạn thực sự không phải sử dụng hai danh sách thả xuống đó, nhưng làm như vậy sẽ giúp công việc của bạn dễ dàng hơn vì tên của quy trình xử lý sự kiện rất quan trọng. Nếu bạn không nhận được tên chính xác, quy trình sẽ không hoạt động. Ngoài ra, một số quy trình xử lý sự kiện sử dụng một hoặc nhiều đối số trong câu lệnh Sub. Không có cách nào bạn có thể nhớ những tranh luận đó là gì. Ví dụ: nếu bạn chọn SheetActivate từ danh sách sự kiện cho đối tượng Workbook, VBE sẽ viết câu lệnh phụ sau:

Private Sub Workbook_SheetActivate (ByVal Sh As Object)

Trong trường hợp này, Sh là đối số được truyền cho thủ tục và là biến đại diện cho trang tính trong sổ làm việc được kích hoạt.

Xem thêm: Làm việc với Mảng cho lập trình VBA trong Excel 2016

Tham khảo: VBA Excel là gì?

LEAVE A REPLY

Please enter your comment!
Please enter your name here