Bagaimana cara menghapus centang pada kotak centang lain saat kotak centang dicentang di Excel?
Seperti terlihat pada gif di bawah ini, misalkan ada daftar pembelian yang perlu Anda selesaikan. Saat memeriksa daftar, Anda menemukan bahwa item yang dicentang dalam beberapa kategori melebihi anggaran dan perlu memilih ulang. Karena daftarnya terlalu panjang, Anda sekarang memerlukan cara yang lebih efisien untuk secara otomatis menghapus centang pada kotak centang asli saat kotak centang baru dicentang dalam suatu kategori. Tutorial ini menunjukkan metode langkah demi langkah untuk membantu Anda menyelesaikannya.
Hapus centang pada kotak centang lain saat kotak centang baru dicentang dengan kode VBA
Hapus centang pada kotak centang lain saat kotak centang baru dicentang dengan kode VBA
Seperti yang ditunjukkan dalam demo di atas, sepuluh kotak centang bernama kotak centang1, kotak centang2, kotak centang3, ..., kotak centang10 dibagi menjadi 3 kelompok dan terletak di kategori yang berbeda dalam tabel.
Dalam contoh ini, Kotak Centang1, 2, 3 berada dalam satu grup, Kotak Centang4, 5, 6, 7 berada dalam satu grup, dan Kotak Centang8, 9,10 berada dalam grup yang sama. Di setiap grup, hanya satu kotak centang yang diizinkan untuk dicentang pada satu waktu. Ketika kotak centang dicentang, kotak centang lain tidak dicentang secara otomatis.
Sekarang mari kita lihat bagaimana menerapkan kode VBA berikut untuk menyelesaikan masalah ini.
1. Klik kanan tab lembar dan klik Lihat kode dari menu konteks
2. Di tempat terbuka Microsoft Visual Basic untuk Aplikasi jendela , rekatkan kode VBA berikut ke dalam Lembar (Kode) jendela.
Kode VBA: Hapus centang pada kotak centang lain saat kotak centang baru dicentang
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
Catatan:
3. tekan lain + Q kunci untuk menutup Microsoft Visual Basic untuk Aplikasi jendela.
Kemudian ketika Anda mencentang kotak centang baru di grup, yang asli dicentang akan dicentang secara otomatis seperti yang ditunjukkan pada gif di bawah ini.
Demo: Hapus centang kotak centang lain saat kotak centang dicentang di Excel
Kutools untuk Excel mencakup 300+ fitur canggih untuk Microsoft Excel. Gratis untuk mencoba tanpa batasan dalam 30 hari. Unduh sekarang!
Alat Produktivitas Kantor Terbaik
Tingkatkan Keterampilan Excel Anda dengan Kutools for Excel, dan Rasakan Efisiensi yang Belum Pernah Ada Sebelumnya. Kutools for Excel Menawarkan Lebih dari 300 Fitur Lanjutan untuk Meningkatkan Produktivitas dan Menghemat Waktu. Klik Di Sini untuk Mendapatkan Fitur yang Paling Anda Butuhkan...
Tab Office Membawa antarmuka Tab ke Office, dan Membuat Pekerjaan Anda Jauh Lebih Mudah
- Aktifkan pengeditan dan pembacaan tab di Word, Excel, PowerPoint, Publisher, Access, Visio, dan Project.
- Buka dan buat banyak dokumen di tab baru di jendela yang sama, bukan di jendela baru.
- Meningkatkan produktivitas Anda sebesar 50%, dan mengurangi ratusan klik mouse untuk Anda setiap hari!