Cách dùng CheckBox trong VBA
Trong bài này mình sẽ hướng dẫn cách sử dụng CheckBox trong VBA, đây là một đối tượng thuộc ActiveX Control được sử dụng rất nhiều khi lập trình VBA.
CheckBox sẽ hiển thị ở dạng hộp kiểm giúp tạo ra nhiều sự lựa chọn cho người dùng. Thông qua nó bạn có thể hỏi người dùng về một số thông tin cố định một cách rất đơn giản.
1. CheckBox là gì?
CheckBox VBA là một đối tượng thuộc nhóm ActiveX Controls của Excel VBA, ta thường sử dụng nó để tạo ra nhiều sự lựa chọn cho người dùng, họ chỉ việc check vào những hộp kiểm và việc xử lý thông tin do mã code VBA đảm nhiệm.
CheckBox rất hữu ích và được sử dụng rất nhiều trong UserForm. Và cũng như những đối tượng khác, nó có đầy đủ các sự kiện và thuộc tính để lập trình viên có thể can thiệp và tùy chỉnh.
Bài viết này được đăng tại [free tuts .net]
* Lưu ý: Kể từ bài này mình sẽ không hướng dẫn chi tiết cách thêm ActiveX Control nữa nhé, nếu bạn chưa biết thì hãy xem bài viết đó.
2. Các thuộc tính của CheckBox trong VBA
CheckBox có rất nhiều thuộc tính, và để xem thuộc tính của nó thì bạn click chuột phải, sau đó chọn Properties.
Sẽ có một hộp thoại hiển thị ra, tại đây chứa tất cả những thông tin về thuộc tính của CheckBox.
3. Các sự kiện của CheckBox trong VBA
CheckBox trong VBA có rất nhiều sự kiện, và để xem danh sách các sự kiện đó thì bạn hãy mở Visual Basic Editor lên, sau đó mở Sheet Module của CheckBox.
Click vào menu xổ xuống phía bên trái thì bạn sẽ thấy danh sách các sự kiện của nó.
Trong danh sách này thì ta thường quan tâm đến một số sự kiện sau:
- Change là sự kiện xảy khi bạn thay đổi liệu ở CheckBox
- GotFucus là sự kiện xảy ra khi bạn click con trỏ chuột vào trong ô CheckBox
- MouseDown, MouseMove và MouseUp là sự kiện liên quan đến chuột
- KeyDown, KeyPress và KeyUp là sự kiện liên quan đến các phím
Để tìm hiểu cách sử dụng của các sự kiện của CheckBox thì tốt nhất bạn hãy search trên trang chủ của Microsoft nhé.
4. Ví dụ cách dùng CheckBox VBA
Bây giờ mình sẽ làm một ví dụ rất đơn giản, đó là bắt sự kiện khi check vào hộp kiểm thì show kết quả ra một ô Excel.
Giá trị của CheckBox là gì?
Trước khi bắt đầu thì bạn phải hiểu CheckBox chỉ có một trong hai giá trị là true hoặc false.
true
tức là đã check vào hộp kiểmfalse
tức là bỏ check khỏi hộp kiểm
1. Ok, bây giờ bạn thêm một checkbox vào Excel, sau đó click đúp chuột hai lần để Excel tự nhảy đến sự kiện Change.
2. Nhập đoạn code sau vào sự kiện change.
Private Sub CheckBox1_Click() If CheckBox1.value = True Then Range("D2").value = 1 If CheckBox1.value = False Then Range("D2").value = 0 End Sub
3. Quay ra ngoài Excel và bạn thử check và bỏ check thì nhận được giao diện như sau.
Trên là cách sử dụng Checkbox trong VBA ở mức căn bản nhất. Vẫn còn rất nhiều vấn đề khi làm việc với nó trong thực tế, và ta sẽ học nó ở chương tiếp theo nhé.