Note: The other languages of the website are Google-translated. Back to English

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 nap. Töltse le most!!


A legjobb irodai termelékenységi eszközök

A Kutools for Excel megoldja a legtöbb problémát, és 80% -kal növeli a termelékenységet

  • újrafelhasználás: Gyorsan helyezze be összetett képletek, diagramok és bármi, amit korábban használt; Cellák titkosítása jelszóval; Levelezőlista létrehozása és e-maileket küldeni ...
  • Szuper Formula Bár (könnyedén szerkeszthet több szöveget és képletet); Olvasás elrendezés (könnyen olvasható és szerkeszthető nagyszámú cella); Beillesztés a Szűrt tartományba...
  • Cellák / sorok / oszlopok egyesítése az adatok elvesztése nélkül; Osztott cellák tartalma; Kombinálja a duplikált sorokat / oszlopokat... megakadályozza az ismétlődő cellákat; Hasonlítsa össze a tartományokat...
  • Válassza a Másolat vagy az Egyedi lehetőséget Sorok; Válassza az Üres sorok lehetőséget (az összes cella üres); Super Find és Fuzzy Find sok munkafüzetben; Véletlenszerű kiválasztás ...
  • Pontos másolás Több cella a képletreferencia megváltoztatása nélkül; Automatikus referenciák létrehozása több lapra; Helyezze be a golyókat, Jelölőnégyzetek és még sok más ...
  • Kivonat szöveg, Szöveg hozzáadása, Eltávolítás pozíció szerint, Hely eltávolítása; Hozz létre és nyomtasson személyhívó részösszegeket; Konvertálás a cellatartalom és a megjegyzések között...
  • Szuper szűrő (mentse el és alkalmazza a szűrősémákat más lapokra); Haladó rendezés hónap / hét / nap, gyakoriság és egyebek szerint; Speciális szűrő félkövér, dőlt betűvel ...
  • Kombinálja a munkafüzeteket és a munkalapokat; Táblázatok egyesítése kulcsoszlopok alapján; Az adatok felosztása több lapra; Kötegelt konvertálás xls, xlsx és PDF...
  • Több mint 300 hatékony funkció. Támogatja az Office / Excel 2007-2021 és 365 verziókat. Minden nyelvet támogat. Könnyű üzembe helyezés vállalatában vagy szervezetében. Teljes funkciók 30 napos ingyenes próbaverzió. 60 napos pénzvisszafizetési garancia.
kte lap 201905

Az Office fül a füles felületet hozza 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!
officetab alja
A megjegyzések rendezése szerint
Hozzászólások (0)
Még nincs értékelés. Legyen Ön az első, aki értékel!
Még senki sem írt megjegyzést

Kövess minket

Copyright © 2009 - www.extendoffice.com. | Minden jog fenntartva. Powered by ExtendOffice. | Oldaltérkép
A Microsoft és az Office logó a Microsoft Corporation védjegyei vagy bejegyzett védjegyei az Egyesült Államokban és / vagy más országokban.
Sectigo SSL védi