• Trang chủ
  • Giới thiệu
    • Học gia sư kế toán tại Hà Nội
  • Excel
  • Kế toán
  • Kinh nghỉệm
  • DAX
  • VBA
  • Văn bản
  • Access
  • Liên hệ
    • Chính sách bảo mật
Thứ Tư, Tháng Ba 29, 2023
  • Login
No Result
View All Result
NEWSLETTER
Học gia sư kế toán
  • Trang chủ
  • Giới thiệu
    • Học gia sư kế toán tại Hà Nội
  • Excel
  • Kế toán
  • Kinh nghỉệm
  • DAX
  • VBA
  • Văn bản
  • Access
  • Liên hệ
    • Chính sách bảo mật
  • Trang chủ
  • Giới thiệu
    • Học gia sư kế toán tại Hà Nội
  • Excel
  • Kế toán
  • Kinh nghỉệm
  • DAX
  • VBA
  • Văn bản
  • Access
  • Liên hệ
    • Chính sách bảo mật
No Result
View All Result
Học Gia sư Kế toán
No Result
View All Result

Tìm hiểu về ý nghĩa và cách dùng các sự kiện trong VBA Excel

by My Lê
22/02/2023
in VBA
0
Tìm hiểu về ý nghĩa và cách dùng các sự kiện trong VBA Excel

Originally posted on 12/02/2022 @ 21:39

Tìm hiểu về ý nghĩa và cách dùng các sự kiện trong VBA Excel

  • Chuyên mục:
  • Excel VBA

Đã bao giờ bạn tự hỏi làm thế nào để khi nháy đúp (double click) chuột thì sẽ hiện lên 1 bảng nhập dữ liệu (userform)? Hay làm thế nào mà chỉ thay đổi điều kiện lập báo cáo là toàn bộ kết quả của báo cáo sẽ thay đổi dù báo cáo đó không chứa công thức? Đó chính xác là những gì mà chúng ta đang nói tới: Các sự kiện của Worksheet trong VBA Excel. Vậy các sự kiện này có ý nghĩa gì, dùng như thế nào, có bao nhiêu loại sự kiện trong VBA? Hãy cùng Học Gia Sư Kế Toán tìm hiểu nhé:

1. Các loại sự kiện trong VBA Excel

Trong VBA có 2 loại sự kiện chính:

  • Sự kiện cho Workbook: Là các sự kiện liên quan tới workbook hay còn gọi là 1 file excel: khi chọn 1 file excel, khi mở 1 file, hoặc khi đóng, khi lưu 1 file… Đối tượng trong nhóm sự kiện này rất nhiều và đa dạng.

15 Event ThisWorkbook event

  • Sự kiện cho Worksheet: Là các sự kiện liên quan tới các WorkSheet trong 1 workbook. Sự kiện dành cho WorkSheet ít hơn so với Workbook, chủ yếu gắn liền với việc có sự thay đổi trong việc chọn lựa, tính toán, cập nhật dữ liệu trong sheet.

15 Event Sheet event

Ngoài ra còn 1 loại sự kiện nữa là sự kiện trong UserForm, nội dung này sẽ được trình bày trong bài viết khác.

2. Ý nghĩa của các sự kiện

Bởi có rất nhiều sự kiện nên chúng ta sẽ tìm hiểu thông qua một vài sự kiện hay sử dụng và từ đó các bạn sẽ áp dụng cho các sự kiện khác:

a. Sự kiện cho Workbook

Các sự kiện độc lập:


VBA101 92019 nho
  • Active là hoạt động, kích hoạt. Tức là khi workbook đó được chọn, được kích hoạt thì sẽ có điều gì xảy ra
  • Deactive là khi không được kích hoạt
  • Open là khi workbook đó được mở thì có thể xảy ra điều gì, ví dụ như ẩn 1 số Sheet nào đó, hay hiện lên 1 thông báo bằng Userform

Các sự kiện gắn với Before

Là trước khi hoàn thành 1 việc gì đó, trước khi thực hiện một sự kiện gì đó thì sẽ thực hiện câu lệnh macro trước, rồi sau đó mới đến lượt sự kiện đó được thực thi. Macro sẽ phải hoàn thành trước rồi mới thực hiện sự kiện đó.

  • BeforeClose: trước khi workbook được đóng lại thì có thể làm gì? ví dụ như xóa một nội dung, tính toán lại 1 bảng tính, cập nhật báo cáo… sau đó mới thực hiện đóng workbook
  • BeforePrint: trước khi thực hiện việc in thì sẽ phải hoàn tất một thủ tục gì đó, ví dụ như kẻ khung, định dạng, thêm bớt nội dung, ẩn/hiện một số dòng, cột trong 1 sheet… rồi mới đến thực hiện lệnh in

Các sự kiện gắn với After

Là sau khi hoàn thành 1 sự kiện thì lập tức thực hiện tiếp một số câu lệnh. Macro sẽ thực hiện sau khi sự kiện đó hoàn thành. Mặc dù kết quả đều gần giống với sự kiện Before nhưng thứ tự thực hiện là khác nhau, nên có thể dẫn tới việc kết quả đưa ra có chính xác hay không.

  • AfterSave: Sau khi workbook được lưu
  • AfterXMLImport: Sau khi nạp dữ liệu từ 1 file XML vào workbook

Các sự kiện liên quan tới Sheet trong Workbook

Là khi một trong số các Sheet trong Workbook được tác động: Bị xóa, bị đổi tên, bị di chuyển, click chuột trái, click chuột phải… thì sẽ có thể chạy ra 1 câu lệnh macro

Các sự kiện liên quan tới Window – cửa sổ làm việc của Excel

Khi cửa sổ làm việc của excel diễn ra một sự kiện nào đó, như thay đổi kích thước (resize), được kích hoạt (active), không được kích hoạt (deactive)… thì chúng ta có thể gắn vào đó một số câu lệnh. Ví dụ như khi cửa sổ làm việc của Excel bị thay đổi kích thước thì chúng ta cũng đồng thời thay đổi kích thước của 1 Userform chẳng hạn.

b. Sự kiện cho Worksheet

Tương tự với các sự kiện của Workbook, trong Worksheet cũng có các sự kiện độc lập, sự kiện gắn với Before. Ngoài ra còn có các sự kiện đặc trưng cho đối tượng Pivot table, Table.

Mỗi khi chúng ta tác động tới một đối tượng cụ thể, một vùng cụ thể trong Sheet bằng một sự kiện: thay đổi dữ liệu, thay đổi vị trí chọn, click chuột phải, nháy đúp chuột… thì đều có thể gắn với 1 lệnh macro để thực hiện một điều gì đó.

Nếu tại Worksheet thì chúng ta cần phải chọn cụ thể là worksheet nào. Khi đó tại đúng Sheet đã được thiết lập sự kiện mới có thể khiến macro trong sự kiện đó hoạt động.

3. Cách tạo 1 sự kiện trong VBA

Rất đơn giản, chúng ta chỉ cần chọn nơi mà chúng ta muốn bắt sự kiện: tại workbook hay tại worksheet. Nếu tại Worksheet thì cần cụ thể là Worksheet nào.

Khi chọn nơi bắt sự kiện, phần bảng viết code sẽ có 2 mục: Đối tượng nào và sự kiện nào.

  • Đối tượng nào: Thường trong ThisWorkbook sẽ chọn Workbook, trong Sheet sẽ chọn Worksheet
  • Sự kiện nào: tùy theo mục đích mà chúng ta sẽ chọn sự kiện phù hợp với đối tượng được chọn. Hầu hết các sự kiện có thể xảy ra đều được liệt kê đầy đủ, có sẵn để cho chúng ta chọn.

Khi chọn 1 sự kiện thì sẽ ra một câu lệnh đặ trong Private Sub:

15 Event Worksheet SelectionChange

Private Sub là 1 thủ tục chạy ngầm, không gọi trực tiếp như Sub thông thường.

Khi chọn sự kiện trong Worksheet thì ban đầu sẽ tự động mặc định là sự kiện SelectionChange (thay đổi đối tượng được chọn). Muốn thay đổi sang sự kiện khác thì chúng ta sẽ chọn lại sự kiện trong mục Sự kiện nào

Các câu lệnh macro cần thực hiện khi sự kiện diễn ra (khi bắt được sự kiện) phải được đặt trong cấu trúc của sự kiện đó (nằm trong Private Sub – End Sub)

Các bạn có thể tham khảo một số sự kiện sau:

Tự động xác định kết quả tìm mức giá bán tối ưu bằng cách sử dụng VBA

Hướng dẫn cách mở userform bằng thao tác double click VBA Excel

Để tìm hiểu thêm nhiều kiến thức về VBA, mời bạn tham dự khóa học VBA101 – Tự động hóa Excel với lập trình VBA. Đây là khóa học rất hữu ích dành cho bạn, giúp bạn hiểu một cách bài bản về VBA và cách sử dụng VBA, ứng dụng VBA vào công việc để tăng hiệu quả. Hãy cùng khám phá nào:


Tác giả: duongquan211287

·
·
·
Bài viết khác của cùng tác giả

  • Tất cả
  • Python
  • SQL
  • VBA

3.000.000VND 1.800.000VND
PYXL101
Xem chi tiết

3.000.000VND 1.600.000VND
SQL100
Xem chi tiết

499.000VND 199.000VND
PY100
Xem chi tiết

Bài viết liên quan

Cách tạo menu chuyển động đẹp trong Excel sử dụng VBA

Cách lọc lấy số trong ô lẫn cả số và chữ hoặc ngược lại

Cách xóa nội dung trùng lặp trong một ô của Excel

Tải về miễn phí File Excel quản lý kho bằng excel VBA

Xác định ngày bất kỳ là thứ mấy trong tuần

Hướng dẫn cách đếm ký tự, ký tự đặc biệt trong một ô hoặc một dải ô trong Excel


Khóa học liên quan

Khóa học Tự động hóa Excel với lập trình VBA cho người mới bắt đầu
Chi tiết khóa học

Khóa học Lập trình VBA nâng cao trong Excel
Chi tiết khóa học

  

© Học Gia Sư Kế Toán. All rights reserved.

My Lê

My Lê

My Lê tên thật là Mê Ly đã có 10 năm kinh nghiệm trong ngành kế toán.

Next Post
Sử dụng VBA Macro trong Excel để xóa hàng hoặc loại bỏ mọi hàng khác

Sử dụng VBA Macro trong Excel để xóa hàng hoặc loại bỏ mọi hàng khác

Recommended

Cách làm việc với form trong Access 2016

Cách làm việc với form trong Access 2016

1 tháng ago
Hướng dẫn nguyên tắc kế toán các khoản doanh thu theo thông tư 200

Hướng dẫn nguyên tắc kế toán các khoản doanh thu theo thông tư 200

1 tháng ago

Tin mới nhất

    Fanpage

    • Liên hệ
    • Giới thiệu
    • Đặt quảng cáo
    Liên hệ chúng tôi qua email : hocgiasuketoan.com@gmail.com

    © 2022 Hocgiasuketoan Premium magazine by Hocgiasuketoan

    No Result
    View All Result
    • Trang chủ
    • Giới thiệu
      • Học gia sư kế toán tại Hà Nội
    • Excel
    • Kế toán
    • Kinh nghỉệm
    • DAX
    • VBA
    • Văn bản
    • Access
    • Liên hệ
      • Chính sách bảo mật

    © 2022 Hocgiasuketoan Premium magazine by Hocgiasuketoan

    Welcome Back!

    Login to your account below

    Forgotten Password?

    Retrieve your password

    Please enter your username or email address to reset your password.

    Log In