Ugrás a tartalomra

Hogyan lehet törölni egy másik jelölőnégyzet bejelölését, ha egy jelölőnégyzet be van jelölve az Excelben?

Ahogy az alábbi gif is mutatja, tegyük fel, hogy van egy vásárlási lista, amelyet Önnek kell véglegesítenie. A lista ellenőrzése során azt tapasztalja, hogy egyes kategóriákban a bejelölt tételek túllépik a költségvetést, és újra ki kell választani. Mivel a lista túl hosszú, most egy hatékonyabb módszerre van szüksége az eredetileg bejelölt jelölőnégyzet automatikus törlésére, amikor egy kategóriában új jelölőnégyzetet jelöl be. Ez az oktatóanyag lépésről lépésre bemutatja a módszert, hogy segítsen a megvalósításban.

Törölje a jelölést egy másik jelölőnégyzetből, ha új jelölőnégyzet van bejelölve VBA-kóddal


Törölje a jelölést egy másik jelölőnégyzetből, ha új jelölőnégyzet van bejelölve VBA-kóddal

Ahogy a fenti demóban is látható, tíz jelölőnégyzet van megnevezve 1. jelölőnégyzet, 2. jelölőnégyzet, 3. jelölőnégyzet,..., 10. jelölőnégyzet 3 csoportra vannak osztva, és a táblázatban különböző kategóriákban találhatók.

Ebben a példában a Checkbox1, 2, 3 egy csoportban, a Checkbox4, 5, 6, 7 egy csoportban, a Checkbox8, 9,10 pedig ugyanabban a csoportban található. Minden csoportban egyszerre csak egy jelölőnégyzetet lehet bejelölni. Ha egy jelölőnégyzet be van jelölve, egy másik jelölőnégyzet bejelölése automatikusan törlődik.

Most nézzük meg, hogyan kell alkalmazni a következő VBA-kódot a probléma megoldására.

1. Kattintson jobb gombbal a lapfülre, majd kattintson a gombra Kód megtekintése a helyi menüből.

2. A nyitottban Microsoft Visual Basic for Applications ablakban illessze be a következő VBA-kódot a Lap (kód) ablak.

VBA-kód: Szüntesse meg egy másik jelölőnégyzet bejelölését, ha új jelölőnégyzetet jelöl be

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

Megjegyzések:

1) A kódban Checkbox1, Checkbox2, ..., A lemorzsolódási Window 10. jelölőnégyzet a jelölőnégyzetek neve;
2) A következő sorban a dupla idézőjelbe tett jelölőnégyzetek ugyanabba a csoportba tartoznak, és minden jelölőnégyzet vesszővel van elválasztva. További jelölőnégyzet-csoportok hozzáadásához tegye a jelölőnégyzeteket új dupla idézőjelbe.
xAllArr = Array("CheckBox1,CheckBox2,CheckBox3", "CheckBox4,CheckBox5,CheckBox6,CheckBox7", "CheckBox8,CheckBox9,CheckBox10")
3) A jelölőnégyzetek ActiveX-vezérlő jelölőnégyzeteket.

3. megnyomni a más + Q gombok a Microsoft Visual Basic for Applications ablak.

Ezután, amikor bejelöl egy új jelölőnégyzetet egy csoportban, az eredeti bejelölt négyzet bejelölése automatikusan törlődik, ahogy az az alábbi gif-en is látható.


Demo: Törölje a jelölést egy másik jelölőnégyzetből, ha egy jelölőnégyzet be van jelölve az Excelben

  Kutools az Excel számára 300+ hatékony funkciót tartalmaz a Microsoft Excel számára. Ingyenesen kipróbálható korlátozás nélkül 30 napon belül. Töltse le most!!

A legjobb irodai hatékonyságnövelő eszközök

🤖 Kutools AI Aide: Forradalmasítsa az adatelemzést a következők alapján: Intelligens végrehajtás   |  Kód létrehozása  |  Hozzon létre egyéni képleteket  |  Adatok elemzése és diagramok létrehozása  |  A Kutools funkciók meghívása...
Népszerű szolgáltatások: Ismétlődések keresése, kiemelése vagy azonosítása   |  Üres sorok törlése   |  Oszlopok vagy cellák kombinálása adatvesztés nélkül   |   Kerek Formula nélkül ...
Szuper keresés: Több kritérium VLookup    Többértékű VLookup  |   VLookup több munkalapon   |   Fuzzy Lookup ....
Speciális legördülő lista: Gyors legördülő lista létrehozása   |  Függő legördülő lista   |  Többszörösen válassza ki a legördülő listát ....
Oszlopkezelő: Adjon meg egy adott számú oszlopot  |  Oszlopok mozgatása  |  Kapcsolja be a Rejtett oszlopok láthatósági állapotát  |  Tartományok és oszlopok összehasonlítása ...
Kiemelt funkciók: Rács fókusz   |  Design nézet   |   Nagy Formula bár    Munkafüzet és lapkezelő   |  Erőforrás-könyvtár (Auto szöveg)   |  Dátumválasztó   |  Kombinálja a munkalapokat   |  Cellák titkosítása/dekódolása    E-mailek küldése listánként   |  Szuper szűrő   |   Speciális szűrő (félkövér/dőlt/áthúzott szűrés...) ...
A 15 legjobb eszközkészlet12 szöveg Eszközök (Szöveg hozzáadása, Karakterek eltávolítása,...)   |   50 + Táblázatos Típusai (Gantt-diagram,...)   |   40+ Praktikus képletek (Számolja ki az életkort a születésnap alapján,...)   |   19 beszúrás Eszközök (Helyezze be a QR-kódot, Kép beszúrása az útvonalból,...)   |   12 Átalakítás Eszközök (Számok szavakig, Valuta átváltás,...)   |   7 Egyesítés és felosztás Eszközök (Haladó kombinált sorok, Hasított sejtek,...)   |   ... és több

Töltsd fel Excel-készségeidet a Kutools for Excel segítségével, és tapasztald meg a még soha nem látott hatékonyságot. A Kutools for Excel több mint 300 speciális funkciót kínál a termelékenység fokozásához és az időmegtakarításhoz.  Kattintson ide, hogy megszerezze a leginkább szükséges funkciót...

Leírás


Az Office lap füles felületet hoz az Office-ba, és sokkal könnyebbé teszi a munkáját

  • Füles szerkesztés és olvasás engedélyezése Wordben, Excelben és PowerPointban, Publisher, Access, Visio és Project.
  • Több dokumentum megnyitása és létrehozása ugyanazon ablak új lapjain, mint új ablakokban.
  • 50% -kal növeli a termelékenységet, és naponta több száz kattintással csökkenti az egér kattintását!
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