Bỏ qua nội dung chính

Làm cách nào để bỏ chọn một hộp kiểm khác khi một hộp kiểm được chọn trong Excel?

Như được hiển thị trong gif bên dưới, giả sử có một danh sách mua hàng cần được bạn hoàn thiện. Trong khi kiểm tra danh sách, bạn thấy rằng các mục đã chọn trong một số danh mục vượt quá ngân sách và cần phải chọn lại. Vì danh sách quá dài, nên bây giờ bạn cần một cách hiệu quả hơn để tự động bỏ chọn hộp kiểm đã chọn ban đầu khi một hộp kiểm mới được chọn trong một danh mục. Hướng dẫn này trình bày phương pháp từng bước để giúp bạn hoàn thành công việc.

Bỏ chọn hộp kiểm khác khi hộp kiểm mới được chọn bằng mã VBA


Bỏ chọn hộp kiểm khác khi hộp kiểm mới được chọn bằng mã VBA

Như được hiển thị trong bản trình diễn ở trên, mười hộp kiểm có tên Hộp kiểm 1, Hộp kiểm 2, Hộp kiểm 3, ..., Hộp kiểm 10 được chia thành 3 nhóm và nằm trong các danh mục khác nhau trong bảng.

Trong ví dụ này, Checkbox1, 2, 3 nằm trong một nhóm, Checkbox4, 5, 6, 7 nằm trong một nhóm và Checkbox8, 9,10 nằm trong cùng một nhóm. Trong mỗi nhóm, mỗi lần chỉ được phép chọn một hộp kiểm. Khi một hộp kiểm được chọn, một hộp kiểm khác sẽ tự động được bỏ chọn.

Bây giờ chúng ta hãy xem làm thế nào để áp dụng mã VBA sau đây để giải quyết vấn đề này.

1. Nhấp chuột phải vào tab trang tính và nhấp vào Mã Chế độ xem từ trình đơn ngữ cảnh.

2. Trong mở Microsoft Visual Basic cho các ứng dụng cửa sổ, dán mã VBA sau vào Trang tính (Mã) cửa sổ.

Mã VBA: Bỏ chọn hộp kiểm khác khi hộp kiểm mới được chọn

Dim xBol As Boolean
'Updated by Extendoffice 20220816
Private Sub CheckBox1_Change()
SetCheckBoxes "CheckBox1"
End Sub

Private Sub CheckBox2_Change()
SetCheckBoxes "CheckBox2"
End Sub

Private Sub CheckBox3_Change()
SetCheckBoxes "CheckBox3"
End Sub

Private Sub CheckBox4_Change()
SetCheckBoxes "CheckBox4"
End Sub

Private Sub CheckBox5_Change()
SetCheckBoxes "CheckBox5"
End Sub

Private Sub CheckBox6_Click()
SetCheckBoxes "CheckBox6"
End Sub

Private Sub CheckBox7_Click()
SetCheckBoxes "CheckBox7"
End Sub
Private Sub CheckBox8_Click()
SetCheckBoxes "CheckBox8"
End Sub
Private Sub CheckBox9_Click()
SetCheckBoxes "CheckBox9"
End Sub
Private Sub CheckBox10_Click()
SetCheckBoxes "CheckBox10"
End Sub

Private Function SetCheckBoxes(mCheckBoxName As String)
Dim x As Long
Dim xAllArr
Dim xArrItem
Dim xI, xJ
If Not xBol Then Exit Function
'In the following line, the checkboxes enclosed in double quotes belong to the same group, and each checkbox is separated by a comma. To add more checkbox groups, please enclose the checkboxes in new double quotes.
xAllArr = Array("CheckBox1,CheckBox2,CheckBox3", "CheckBox4,CheckBox5,CheckBox6,CheckBox7", "CheckBox8,CheckBox9,CheckBox10")
For xI = LBound(xAllArr) To UBound(xAllArr)
If InStr(xAllArr(xI), mCheckBoxName) > 0 Then
xBol = False
xArrItem = Split(xAllArr(xI), ",")
For xJ = LBound(xArrItem) To UBound(xArrItem)
If xArrItem(xJ) <> mCheckBoxName Then
Me.OLEObjects(xArrItem(xJ)).Object.Value = False
End If
Next
End If
Next
xBol = True
End Function

Private Sub Worksheet_Activate()
xBol = True
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
xBol = True
End Sub

Chú ý:

1) Trong mã, Hộp kiểm 1, Hộp kiểm 2, ..., Hộp kiểm 10 là tên của các hộp kiểm;
2) Trong dòng sau, các hộp kiểm được đặt trong dấu ngoặc kép thuộc cùng một nhóm và mỗi hộp kiểm được phân tách bằng dấu phẩy. Để thêm nhiều nhóm hộp kiểm hơn, vui lòng đặt các hộp kiểm trong dấu ngoặc kép mới.
xAllArr = Array("CheckBox1,CheckBox2,CheckBox3", "CheckBox4,CheckBox5,CheckBox6,CheckBox7", "CheckBox8,CheckBox9,CheckBox10")
3) Các hộp kiểm là Kiểm soát ActiveX hộp kiểm.

3. Nhấn nút Khác + Q chìa khóa để đóng Microsoft Visual Basic cho các ứng dụng cửa sổ.

Sau đó, khi bạn chọn hộp kiểm mới trong một nhóm, hộp kiểm đã chọn ban đầu sẽ tự động được bỏ chọn như được hiển thị trong gif bên dưới.


Demo: Bỏ chọn hộp kiểm khác khi hộp kiểm được chọn trong Excel

  Kutools cho Excel bao gồm hơn 300 tính năng mạnh mẽ cho Microsoft Excel. Dùng thử miễn phí không giới hạn trong 30 ngày. Tải về!

Công cụ năng suất văn phòng tốt nhất

🤖 Trợ lý AI của Kutools: Cách mạng hóa việc phân tích dữ liệu dựa trên: Thực thi thông minh   |  Tạo mã  |  Tạo công thức tùy chỉnh  |  Phân tích dữ liệu và tạo biểu đồ  |  Gọi các hàm Kutools...
Các tính năng phổ biến: Tìm, đánh dấu hoặc xác định các bản sao   |  Xóa hàng trống   |  Kết hợp các cột hoặc ô mà không làm mất dữ liệu   |   Vòng không có công thức hữu ích. Cảm ơn !
Siêu tra cứu: Nhiều tiêu chí VLookup    VLookup Nhiều Giá Trị  |   VLookup trên nhiều trang tính   |   Tra cứu mờ ....
Danh sách thả xuống nâng cao: Tạo nhanh danh sách thả xuống   |  Danh sách thả xuống phụ thuộc   |  Danh sách thả xuống nhiều lựa chọn ....
Trình quản lý cột: Thêm một số cột cụ thể  |  Di chuyển cột  |  Chuyển đổi trạng thái hiển thị của các cột ẩn  |  So sánh dãy và cột hữu ích. Cảm ơn !
Các tính năng nổi bật: Tiêu điểm lưới   |  Chế độ xem thiết kế   |   Thanh công thức lớn    Trình quản lý sổ làm việc & trang tính   |  Thư viện tài nguyên (Văn bản tự động)   |  Bảng chọn ngày   |  Kết hợp các bảng tính   |  Mã hóa/Giải mã ô    Gửi email theo danh sách   |  Siêu lọc   |   Bộ lọc đặc biệt (lọc in đậm/nghiêng/gạch ngang...) ...
15 bộ công cụ hàng đầu12 bản văn CÔNG CỤ (thêm văn bản, Xóa ký tự,...)   |   50 + Biểu đồ Các loại (Biểu đồ Gantt,...)   |   40+ Thực tế Công thức (Tính tuổi dựa trên ngày sinh,...)   |   19 chèn CÔNG CỤ (Chèn mã QR, Chèn ảnh từ đường dẫn,...)   |   12 Chuyển đổi CÔNG CỤ (Số thành từ, Chuyển đổi tiền tệ,...)   |   7 Hợp nhất & Tách CÔNG CỤ (Các hàng kết hợp nâng cao, Chia ô,...)   |   ... và nhiều hơn nữa

Nâng cao kỹ năng Excel của bạn với Kutools for Excel và trải nghiệm hiệu quả hơn bao giờ hết. Kutools for Excel cung cấp hơn 300 tính năng nâng cao để tăng năng suất và tiết kiệm thời gian.  Bấm vào đây để có được tính năng bạn cần nhất...

Mô tả


Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!
Comments (0)
No ratings yet. Be the first to rate!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations