Ana içeriğe atla

Excel'de bir onay kutusu işaretlendiğinde başka bir onay kutusunun işaretini nasıl kaldırabilirim?

Aşağıdaki gif'te gösterildiği gibi, sizin tarafınızdan tamamlanması gereken bir satın alma listesi olduğunu varsayalım. Listeyi kontrol ederken, bazı kategorilerdeki işaretli öğelerin bütçeyi aştığını ve yeniden seçilmesi gerektiğini görüyorsunuz. Liste çok uzun olduğundan, artık bir kategoride yeni bir onay kutusu işaretlendiğinde orijinal işaretli onay kutusunun işaretini otomatik olarak kaldırmak için daha etkili bir yola ihtiyacınız var. Bu öğretici, bunu yapmanıza yardımcı olacak yöntemi adım adım gösterir.

VBA koduyla yeni bir onay kutusu işaretlendiğinde başka bir onay kutusunun işaretini kaldırın


VBA koduyla yeni bir onay kutusu işaretlendiğinde başka bir onay kutusunun işaretini kaldırın

Yukarıdaki demoda gösterildiği gibi, adında on onay kutusu onay kutusu1, onay kutusu2, onay kutusu3, ..., onay kutusu10 3 gruba ayrılır ve tabloda farklı kategorilerde yer alır.

Bu örnekte Checkbox1, 2, 3 bir grupta, Checkbox4, 5, 6, 7 bir grupta ve Checkbox8, 9,10 aynı grupta. Her grupta, aynı anda yalnızca bir onay kutusunun işaretlenmesine izin verilir. Bir onay kutusu işaretlendiğinde, başka bir onay kutusu otomatik olarak işaretlenmez.

Şimdi bu sorunu çözmek için aşağıdaki VBA kodunu nasıl uygulayacağımızı görelim.

1. Sayfa sekmesine sağ tıklayın ve Kodu Görüntüle bağlam menüsünden.

2. Açılan Uygulamalar için Microsoft Visual Basic penceresinde aşağıdaki VBA kodunu yapıştırın. Sayfa (Kod) pencere.

VBA kodu: Yeni bir onay kutusu işaretlendiğinde başka bir onay kutusunun işaretini kaldırı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

notlar:

1) Kodda, Onay Kutusu1, Onay Kutusu2, ..., onay kutusu10 onay kutularının adıdır;
2) Aşağıdaki satırda, çift tırnak içine alınmış onay kutuları aynı gruba aittir ve her bir onay kutusu virgülle ayrılmıştır. Daha fazla onay kutusu grubu eklemek için lütfen onay kutularını yeni çift tırnak içine alın.
xAllArr = Array("CheckBox1,CheckBox2,CheckBox3", "CheckBox4,CheckBox5,CheckBox6,CheckBox7", "CheckBox8,CheckBox9,CheckBox10")
3) Onay kutuları ActiveX denetimi onay kutuları.

3. Tuşuna basın. Ara Toplam + Q kapatmak için anahtarlar Uygulamalar için Microsoft Visual Basic pencere.

Ardından, bir grupta yeni bir onay kutusunu işaretlediğinizde, aşağıdaki gif'te gösterildiği gibi orijinal işaretli olanın işareti otomatik olarak kaldırılacaktır.


Demo: Excel'de bir onay kutusu işaretlendiğinde başka bir onay kutusunun işaretini kaldırın

  Kutools for Excel Microsoft Excel için 300'den fazla güçlü özellik içerir. 30 gün içinde hiçbir sınırlama olmaksızın ücretsiz deneyin. Şimdi indir!

En İyi Ofis Üretkenlik Araçları

🤖 Kutools AI Yardımcısı: Aşağıdakilere dayalı olarak veri analizinde devrim yaratın: Akıllı Yürütme   |  Kodunu oluşturun  |  Özel Formüller Oluşturun  |  Verileri Analiz Edin ve Grafikler Oluşturun  |  Kutools İşlevlerini Çağır...
Popüler Özellikler: Yinelenenleri Bul, Vurgula veya Tanımla   |  Boş Satırları Sil   |  Veri Kaybı Olmadan Sütunları veya Hücreleri Birleştirin   |   Formülsüz Tur ...
Süper Arama: Çoklu Ölçütlü VLookup    Çoklu Değer VLookup  |   Birden Çok Sayfada VLookup   |   Bulanık Arama ....
Gelişmiş Açılır Liste: Hızla Açılır Liste Oluşturun   |  Bağımlı Açılır Liste   |  Çoklu Seçim Açılır Liste ....
Sütun Yöneticisi: Belirli Sayıda Sütun Ekleme  |  Sütunları Taşı  |  Gizli Sütunların Görünürlük Durumunu Değiştir  |  Aralıkları ve Sütunları Karşılaştırın ...
Öne Çıkan Özellikler: Izgara Odağı   |  Tasarım görünümü   |   Büyük Formül Çubuğu    Çalışma Kitabı ve Sayfa Yöneticisi   |  Kaynak Kütüphanesi (Otomatik metin)   |  Tarih Seçici   |  Çalışma Sayfalarını Birleştirin   |  Hücreleri Şifrele/Şifresini Çöz    E-postaları Listeye Göre Gönder   |  Süper Filtre   |   Özel Filtre (kalın/italik/üstü çizili filtre...) ...
En İyi 15 Araç Seti12 Metin Tools (Metin ekle, Karakterleri Kaldır, ...)   |   50+ Grafik Türleri (Gantt şeması, ...)   |   40+ Pratik Formüller (Yaşı doğum gününe göre hesapla, ...)   |   19 sokma Tools (QR Kodunu Girin, Yoldan Resim Ekle, ...)   |   12 Dönüştürme Tools (Sayılardan Kelimelere, Para Birimi Dönüştürme, ...)   |   7 Birleştir ve Böl Tools (Gelişmiş Kombine Satırları, Bölünmüş hücreler, ...)   |   ... ve dahası

Kutools for Excel ile Excel Becerilerinizi Güçlendirin ve Daha Önce Hiç Olmadığı Gibi Verimliliği Deneyimleyin. Kutools for Excel, Üretkenliği Artırmak ve Zamandan Tasarruf Etmek için 300'den Fazla Gelişmiş Özellik Sunar.  En Çok İhtiyacınız Olan Özelliği Almak İçin Buraya Tıklayın...

Açıklama


Office Tab, Office'e Sekmeli Arayüz Getirir ve İşinizi Çok Daha Kolay Hale Getirir

  • Word, Excel, PowerPoint'te sekmeli düzenlemeyi ve okumayı etkinleştirin, Publisher, Access, Visio ve Project.
  • Yeni pencereler yerine aynı pencerenin yeni sekmelerinde birden çok belge açın ve oluşturun.
  • Üretkenliğinizi% 50 artırır ve her gün sizin için yüzlerce fare tıklamasını azaltır!
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