Làm cách nào để chỉ chọn một hộp kiểm trong một nhóm hộp kiểm trong Excel?
Như ảnh chụp màn hình bên dưới được hiển thị, đối với một nhóm hộp kiểm liệt kê ở hàng 2, khi chỉ chọn hoặc chọn một hộp kiểm, các hộp kiểm khác sẽ bị vô hiệu hóa. Làm thế nào để đạt được nó? Mã VBA trong bài viết này có thể giúp bạn.
Chỉ tạo một hộp kiểm để được chọn với mã VBA
Chỉ tạo một hộp kiểm để được chọn với mã VBA
Bạn có thể chạy các mã VBA dưới đây để chỉ chọn một hộp kiểm trong nhóm hộp kiểm mỗi lần. Hãy làm như sau.
1. Trước hết, hãy chèn các hộp kiểm khi bạn cần. Tại đây, bạn nên chèn Hộp kiểm ActiveX Control như ảnh chụp màn hình sau được hiển thị:
2. Sau đó nhấn Khác + Phím F11 đồng thời để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.
3. Trong phần mở đầu Microsoft Visual Basic cho các ứng dụng cửa sổ, nhấp Chèn > Mô-đun lớp học.
4. Thay đổi tên lớp thành ClsChk bên trong (Họ tên) hộp của Bất động sản , sau đó sao chép và dán mã VBA bên dưới vào Mã cửa sổ. Xem ảnh chụp màn hình:
Mã VBA 1: Chỉ chọn một hộp kiểm mỗi lần
Option Explicit
Public WithEvents Chk As MSForms.CheckBox
Private Sub Chk_Click()
Call SelOneCheckBox(Chk)
End Sub
Sub SelOneCheckBox(Target As Object)
Dim xObj As Object
Dim I As String
Dim n As Integer
If Target.Object.Value = True Then
I = Right(Target.Name, Len(Target.Name) - 8)
For n = 1 To ActiveSheet.OLEObjects.Count
If n <> Int(I) Then
Set xObj = ActiveSheet.OLEObjects.Item(n)
xObj.Object.Value = False
xObj.Object.Enabled = False
End If
Next
Else
I = Right(Target.Name, Len(Target.Name) - 8)
For n = 1 To ActiveSheet.OLEObjects.Count
If n <> Int(I) Then
Set xObj = ActiveSheet.OLEObjects.Item(n)
xObj.Object.Enabled = True
End If
Next
End If
End Sub
5. Bây giờ hãy nhấp vào Chèn > Mô-đun, sau đó sao chép và dán mã VBA bên dưới vào Mô-đun cửa sổ.
Mã VBA 2: Chỉ chọn một hộp kiểm mỗi lần
Dim xCollection As New Collection
Public Sub ClsChk_Init()
Dim xSht As Worksheet
Dim xObj As Object
Dim xChk As ClsChk
Set xSht = ActiveSheet
Set xCollection = Nothing
For Each xObj In xSht.OLEObjects
If xObj.Name Like "CheckBox**" Then
Set xChk = New ClsChk
Set xChk.Chk = CallByName(xSht, xObj.Name, VbGet)
xCollection.Add xChk
End If
Next
Set xChk = Nothing
End Sub
6. Nhấn nút F5 phím để chạy mã.
Kể từ bây giờ, khi chọn bất kỳ hộp kiểm nào trong trang tính, các hộp kiểm khác sẽ tự động bị vô hiệu hóa và bạn có thể bỏ chọn nó để kích hoạt lại tất cả các hộp kiểm.
Chú thích: Nếu hộp kiểm mới được thêm vào nhóm hộp kiểm, vui lòng chạy lại mã VBA để kích hoạt lại tất cả các hộp kiểm. Xóa hộp kiểm khỏi nhóm hộp kiểm cũng cần phải chạy lại mã.
Rbài báo phấn khởi:
- Làm cách nào để lọc dữ liệu dựa trên hộp kiểm trong Excel?
- Làm cách nào để ẩn hộp kiểm khi hàng bị ẩn trong Excel?
- Làm cách nào để đánh dấu ô hoặc hàng bằng hộp kiểm trong Excel?
- Làm cách nào để tạo danh sách thả xuống với nhiều hộp kiểm trong Excel?
- Làm cách nào để chèn dấu ngày tháng vào một ô nếu được chọn hộp kiểm trong Excel?
Các công cụ năng suất văn phòng tốt nhất
Kutools cho Excel giải quyết hầu hết các vấn đề của bạn và tăng 80% năng suất của bạn
- Tái sử dụng: Chèn nhanh công thức phức tạp, biểu đồ và bất cứ thứ gì bạn đã sử dụng trước đây; Mã hóa ô với mật khẩu; Tạo danh sách gửi thư và gửi email ...
- Thanh siêu công thức (dễ dàng chỉnh sửa nhiều dòng văn bản và công thức); Bố cục đọc (dễ dàng đọc và chỉnh sửa số lượng ô lớn); Dán vào Dải ô đã Lọchữu ích. Cảm ơn !
- Hợp nhất các ô / hàng / cột mà không làm mất dữ liệu; Nội dung phân chia ô; Kết hợp các hàng / cột trùng lặp... Ngăn chặn các ô trùng lặp; So sánh các dãyhữu ích. Cảm ơn !
- Chọn trùng lặp hoặc duy nhất Hàng; Chọn hàng trống (tất cả các ô đều trống); Tìm siêu và Tìm mờ trong Nhiều Sổ làm việc; Chọn ngẫu nhiên ...
- Bản sao chính xác Nhiều ô mà không thay đổi tham chiếu công thức; Tự động tạo tài liệu tham khảo sang Nhiều Trang tính; Chèn Bullets, Hộp kiểm và hơn thế nữa ...
- Trích xuất văn bản, Thêm Văn bản, Xóa theo Vị trí, Xóa không gian; Tạo và In Tổng số phân trang; Chuyển đổi giữa nội dung ô và nhận xéthữu ích. Cảm ơn !
- Siêu lọc (lưu và áp dụng các lược đồ lọc cho các trang tính khác); Sắp xếp nâng cao theo tháng / tuần / ngày, tần suất và hơn thế nữa; Bộ lọc đặc biệt bằng cách in đậm, in nghiêng ...
- Kết hợp Workbook và WorkSheets; Hợp nhất các bảng dựa trên các cột chính; Chia dữ liệu thành nhiều trang tính; Chuyển đổi hàng loạt xls, xlsx và PDFhữu ích. Cảm ơn !
- Hơn 300 tính năng mạnh mẽ. Hỗ trợ Office / Excel 2007-2021 và 365. Hỗ trợ tất cả các ngôn ngữ. Dễ dàng triển khai trong doanh nghiệp hoặc tổ chức của bạn. Đầy đủ tính năng Dùng thử miễn phí 30 ngày. Bảo đảm hoàn lại tiền trong 60 ngày.

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!














