Gå til hovedindhold

Hvordan fjerner man markeringen af ​​et andet afkrydsningsfelt, når et afkrydsningsfelt er markeret i Excel?

Som vist i gif'en nedenfor, antag, at der er en købsliste, der skal færdiggøres af dig. Mens du tjekker listen, opdager du, at de afkrydsede varer i nogle kategorier er over budgettet og skal genvælges. Da listen er for lang, har du nu brug for en mere effektiv måde til automatisk at fjerne markeringen af ​​det oprindelige afkrydsningsfelt, når et nyt afkrydsningsfelt er markeret i en kategori. Denne tutorial demonstrerer metoden trin-for-trin for at hjælpe dig med at få det gjort.

Fjern markeringen i et andet afkrydsningsfelt, når et nyt afkrydsningsfelt er markeret med VBA-kode


Fjern markeringen i et andet afkrydsningsfelt, når et nyt afkrydsningsfelt er markeret med VBA-kode

Som vist i ovenstående demo, er ti afkrydsningsfelter navngivet Afkrydsningsfelt 1, Afkrydsningsfelt 2, Afkrydsningsfelt 3, ..., Afkrydsningsfelt 10 er opdelt i 3 grupper og placeret i forskellige kategorier i tabellen.

I dette eksempel er Checkbox1, 2, 3 i én gruppe, Checkbox4, 5, 6, 7 er i én gruppe, og Checkbox8, 9,10 er i samme gruppe. I hver gruppe er det kun tilladt at markere ét afkrydsningsfelt ad gangen. Når et afkrydsningsfelt er markeret, fjernes et andet afkrydsningsfelt automatisk.

Lad os nu se, hvordan du anvender følgende VBA-kode for at løse dette problem.

1. Højreklik på arkfanen, og klik Vis kode fra kontekstmenuen.

2. I åbnet Microsoft Visual Basic til applikationer vindue , indsæt følgende VBA-kode i Ark (kode) vindue.

VBA-kode: Fjern markeringen i et andet afkrydsningsfelt, når et nyt afkrydsningsfelt er markeret

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

Noter:

1) I koden, Afkrydsningsfelt1, Afkrydsningsfelt2, ..., Afkrydsningsfelt 10 er navnet på afkrydsningsfelterne;
2) I den følgende linje tilhører afkrydsningsfelterne i dobbelte anførselstegn den samme gruppe, og hvert afkrydsningsfelt er adskilt af et komma. For at tilføje flere afkrydsningsfeltsgrupper skal du omsætte afkrydsningsfelterne i nye dobbelte anførselstegn.
xAllArr = Array("CheckBox1,CheckBox2,CheckBox3", "CheckBox4,CheckBox5,CheckBox6,CheckBox7", "CheckBox8,CheckBox9,CheckBox10")
3) Afkrydsningsfelterne er ActiveX Control afkrydsningsfelter.

3. Tryk på andre + Q taster for at lukke Microsoft Visual Basic til applikationer vindue.

Når du derefter markerer et nyt afkrydsningsfelt i en gruppe, vil det oprindelige afkrydsede afkrydsningsfelt automatisk blive fjernet som vist i gif-en nedenfor.


Demo: Fjern markeringen i et andet afkrydsningsfelt, når et afkrydsningsfelt er markeret i Excel

  Kutools til Excel indeholder mere end 300 kraftfulde funktioner til Microsoft Excel. Gratis at prøve uden begrænsning i 30 dage. Download nu!

Bedste kontorproduktivitetsværktøjer

🤖 Kutools AI Aide: Revolutionér dataanalyse baseret på: Intelligent udførelse   |  Generer kode  |  Opret brugerdefinerede formler  |  Analyser data og generer diagrammer  |  Aktiver Kutools funktioner...
Populære funktioner: Find, fremhæv eller identificer dubletter   |  Slet tomme rækker   |  Kombiner kolonner eller celler uden at miste data   |   Runde uden formel ...
Super opslag: VLookup med flere kriterier    Multiple Value VLookup  |   VOpslag på tværs af flere ark   |   Fuzzy Lookup ....
Avanceret rulleliste: Opret hurtigt rulleliste   |  Afhængig rulleliste   |  Multivælg rulleliste ....
Column Manager: Tilføj et bestemt antal kolonner  |  Flyt kolonner  |  Skift synlighedsstatus for skjulte kolonner  |  Sammenlign områder og kolonner ...
Fremhævede funktioner: Grid fokus   |  Designvisning   |   Stor Formel Bar    Arbejdsbog & Ark Manager   |  Ressourcebibliotek (Autotekst)   |  Datovælger   |  Kombiner regneark   |  Krypter/Dekrypter celler    Send e-mails efter liste   |  Superfilter   |   Specielt filter (filter fed/kursiv/gennemstreget...) ...
Top 15 værktøjssæt12 tekst Værktøjer (tilføje tekst, Fjern tegn, ...)   |   50 + Chart Typer (Gantt kort, ...)   |   40+ Praktisk formler (Beregn alder baseret på fødselsdag, ...)   |   19 Indsættelse Værktøjer (Indsæt QR-kode, Indsæt billede fra sti, ...)   |   12 Konvertering Værktøjer (Tal til ord, Valutaomregning, ...)   |   7 Flet og del Værktøjer (Avancerede kombinere rækker, Opdel celler, ...)   |   ... og mere

Overlad dine Excel-færdigheder med Kutools til Excel, og oplev effektivitet som aldrig før. Kutools til Excel tilbyder over 300 avancerede funktioner for at øge produktiviteten og spare tid.  Klik her for at få den funktion, du har mest brug for...

Beskrivelse


Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere

  • Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
  • Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
  • Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!
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