Gå til hovedindhold

Hvordan skjuler man kolonner i realtid baseret på brugerinput i Excel?

Det kan være en almindelig opgave for de fleste af os at skjule kolonner i Excel, men har du nogensinde prøvet at skjule kolonner automatisk baseret på nogle specifikke inputværdier? For eksempel, når jeg indtaster teksten "AA" i en celle, er kolonne A skjult; når jeg indtaster "BB", er kolonne B og C skjult; når du indtaster "CC", er kolonne D og E skjult; når du indtaster "DD", er kolonne F skjult som vist nedenfor. Denne artikel vil oprette en VBA-kode til at løse det i Excel.

Skjul eller vis kolonner i realtid baseret på brugerinput med VBA-kode

Skjul eller vis kolonner for at filtrere data baseret på brugerinput med VBA-kode


Skjul eller vis kolonner i realtid baseret på brugerinput med VBA-kode

For at skjule de specifikke kolonner i realtid baseret på inputværdier, skal du anvende nedenstående VBA-kode:

1. Højreklik på arkfanen i regnearket, hvor du vil skjule kolonner, og klik derefter Vis kode fra kontekstmenuen, se skærmbillede

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

VBA-kode: Skjul kolonner i realtid baseret på brugerinput

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Updateby ExtendOffice
xcell = Range("K1").Value
Select Case xcell
Case "AA": Columns("A").EntireColumn.Hidden = False
Columns("A").EntireColumn.Hidden = True
Case "BB": Columns("B:C").EntireColumn.Hidden = False
Columns("B:C").EntireColumn.Hidden = True
Case "CC": Columns("D:E").EntireColumn.Hidden = False
Columns("D:E").EntireColumn.Hidden = True
Case "DD": Columns("F").EntireColumn.Hidden = False
Columns("F").EntireColumn.Hidden = True
Case Else
Columns("A:G").EntireColumn.Hidden = False
End Select
End Sub
Bemærk: I ovenstående kode, K1 er cellen, hvor du indtaster den specifikke tekst, og du bør ændre teksterne og kolonnenavnene efter dit behov. Derudover kan du tilføje andre nye kriterier blot ved at tilføje nedenstående scripts:
  • Case "AA": Columns("A").EntireColumn.Hidden = False
  • Columns("A").EntireColumn.Hidden = Sand

3. Luk derefter kodevinduet. Nu, når du indtaster "AA" i celle K1, og tryk Indtast tast, kolonne A er skjult; når du indtaster "BB", og tryk på Indtast tast, er kolonne B og C skjult, og så videre. Hvis du indtaster en anden værdi eller sletter indholdet, vil de skjulte kolonner blive vist på én gang, se nedenstående demo:


Skjul eller vis kolonner for at filtrere data baseret på brugerinput med VBA-kode

I dette eksempel vil jeg gå til at filtrere et dataområde baseret på et indtastet produktnavn. Når jeg indtaster "Hoodie", vises kun Hættetrøje information, og andre kolonner vil blive skjult på én gang; og når jeg indtaster "Alle", vil alle kolonner blive vist som nedenstående demo vist:

1. Højreklik på arkfanen i regnearket, hvor du vil skjule kolonner, og klik derefter Vis kode fra kontekstmenuen, se skærmbillede:

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

VBA-kode: Skjul eller vis kolonner for at filtrere data baseret på brugerinput

Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby ExtendOffice
    Dim x As Variant, y As String
     If Target.Address = "$K$1" Then
        y = Target.Value
        With Range("B1:H1")
            Application.ScreenUpdating = False
            .EntireColumn.Hidden = (y <> "All")
            If y <> "All" Then
                For Each x In .Cells
                    If x = y Then x.EntireColumn.Hidden = False
                Next
            End If
            Application.ScreenUpdating = True
        End With
    End If
End Sub
Bemærk: I ovenstående kode, K1 er cellen, hvor du indtaster den specifikke tekst, B1: H1 er rækkeoverskrifterne indeholder produktnavnet, som du vil filtrere.

3. Luk derefter kodevinduet. Nu, hvis du indtaster produktnavnet i celle K1, vil kun de tilsvarende kolonner blive vist, den anden vil blive skjult; og hvis du indtaster teksten "Alle", vil alle kolonner blive vist som nedenstående demo vist:

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