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

Hoe kolommen in realtime te verbergen op basis van gebruikersinvoer in Excel?

Het kan voor de meesten van ons een veelvoorkomende taak zijn om kolommen in Excel te verbergen, maar heeft u ooit geprobeerd kolommen automatisch te verbergen op basis van een aantal specifieke invoerwaarden? Als ik bijvoorbeeld de tekst "AA" in een cel invoer, is kolom A verborgen; wanneer ik "BB" invoer, zijn de kolommen B en C verborgen; bij het invoeren van “CC” zijn de kolommen D en E verborgen; bij het invoeren van "DD", is de kolom F verborgen zoals hieronder getoonde demo. In dit artikel wordt een VBA-code gemaakt om het in Excel op te lossen.

Verberg of maak kolommen in realtime zichtbaar op basis van gebruikersinvoer met VBA-code

Verberg of maak kolommen zichtbaar om gegevens te filteren op basis van gebruikersinvoer met VBA-code


Verberg of maak kolommen in realtime zichtbaar op basis van gebruikersinvoer met VBA-code

Om de specifieke kolommen in realtime te verbergen op basis van invoerwaarden, past u de onderstaande VBA-code toe:

1. Klik in het werkblad waar u kolommen wilt verbergen met de rechtermuisknop op de bladtab en klik vervolgens op Bekijk code vanuit het contextmenu, zie screenshot

2. In het geopende Microsoft Visual Basic voor toepassingen venster, kopieer en plak de volgende VBA-code in de Blad (Code) venster.

VBA-code: verberg kolommen in realtime op basis van gebruikersinvoer

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
Opmerking:: In de bovenstaande code, K1 is de cel waar u de specifieke tekst invoert, en u moet de teksten en kolomnamen naar wens wijzigen. Daarnaast kunt u andere nieuwe criteria toevoegen door de onderstaande scripts toe te voegen:
  • Case "AA": Columns("A").EntireColumn.Hidden = False
  • Columns("A").EntireColumn.Hidden = True

3. Sluit vervolgens het codevenster. Nu, wanneer u "AA" invoert in cel K1, en druk op Enter toets, de kolom A is verborgen; wanneer u “BB” invoert en druk op Enter toets, de kolom B en C zijn verborgen, enzovoort. Als u een andere waarde invoert of de inhoud verwijdert, worden de verborgen kolommen meteen weergegeven, zie onderstaande demo:


Verberg of maak kolommen zichtbaar om gegevens te filteren op basis van gebruikersinvoer met VBA-code

In dit voorbeeld ga ik een gegevensbereik filteren op basis van een ingevoerde productnaam. Wanneer ik "Hoodie" invoer, wordt alleen Hoodie-informatie weergegeven en worden andere kolommen meteen verborgen; en wanneer ik "Alles" invoer, worden alle kolommen weergegeven zoals hieronder getoonde demo:

1. Klik in het werkblad waar u kolommen wilt verbergen met de rechtermuisknop op de bladtab en klik vervolgens op Bekijk code zie screenshot vanuit het contextmenu:

2. In het geopende Microsoft Visual Basic voor toepassingen venster, kopieer en plak de volgende VBA-code in de Blad (Code) venster.

VBA-code: kolommen verbergen of zichtbaar maken om gegevens te filteren op basis van gebruikersinvoer

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
Opmerking:: In de bovenstaande code, K1 is de cel waar u de specifieke tekst invoert, B1: H1 is dat de rijkoppen de productnaam bevatten die u wilt filteren.

3. Sluit vervolgens het codevenster. Als u nu de productnaam in cel K1 invoert, worden alleen de bijbehorende kolommen weergegeven, de andere wordt verborgen; en als u de tekst "Alles" invoert, verschijnen alle kolommen zoals hieronder getoonde demo:


De beste tools voor kantoorproductiviteit

Kutools voor Excel lost de meeste van uw problemen op en verhoogt uw productiviteit met 80%

  • visfuik: Snel invoegen complexe formules, grafieken en alles wat je eerder hebt gebruikt; Versleutel cellen met wachtwoord; Maak een mailinglijst en stuur e-mails ...
  • Super Formula-balk (bewerk eenvoudig meerdere regels tekst en formule); Lay-out lezen (gemakkelijk grote aantallen cellen lezen en bewerken); Plakken in gefilterd bereik...
  • Voeg cellen / rijen / kolommen samen zonder gegevens te verliezen; Gespleten cellen inhoud; Combineer dubbele rijen / kolommen... Voorkom dubbele cellen; Vergelijk Ranges...
  • Selecteer Dupliceren of Uniek Rijen; Selecteer lege rijen (alle cellen zijn leeg); Super zoeken en fuzzy zoeken in veel werkboeken; Willekeurige selectie ...
  • Exacte kopie Meerdere cellen zonder de formuleverwijzing te wijzigen; Maak automatisch verwijzingen naar meerdere bladen; Plaats kogels, Selectievakjes en meer ...
  • Extraheer tekst, Tekst toevoegen, Verwijderen op positie, Ruimte verwijderen; Paging-subtotalen maken en afdrukken; Converteren tussen celinhoud en opmerkingen...
  • Super filter (bewaar en pas filterschema's toe op andere bladen); Geavanceerd sorteren per maand / week / dag, frequentie en meer; Speciaal filter door vet, cursief ...
  • Combineer werkmappen en werkbladen; Tabellen samenvoegen op basis van sleutelkolommen; Gegevens splitsen in meerdere bladen; Batch Converteer xls, xlsx en PDF...
  • Meer dan 300 krachtige functies. Ondersteunt Office / Excel 2007-2021 en 365. Ondersteunt alle talen. Eenvoudig te implementeren in uw onderneming of organisatie. Volledige functies Gratis proefperiode van 30 dagen. 60 dagen geld-terug-garantie.
kte tabblad 201905

Office-tabblad Brengt een interface met tabbladen naar Office en maakt uw werk veel gemakkelijker

  • Schakel bewerken en lezen met tabbladen in Word, Excel, PowerPoint in, Publisher, Access, Visio en Project.
  • Open en maak meerdere documenten in nieuwe tabbladen van hetzelfde venster in plaats van in nieuwe vensters.
  • Verhoogt uw productiviteit met 50% en vermindert honderden muisklikken voor u elke dag!
officetab onderkant
Heb je vragen? Stel ze hier. (0)
Nog geen beoordelingen. Beoordeel als eerste!
Er zijn nog geen reacties geplaatst
Laat uw opmerkingen in het Engels achter
Posten als gast
×
Beoordeel dit bericht:
0   Personages
Voorgestelde locaties

Volg ons

Copyright © 2009 - www.extendoffice.com. | Alle rechten voorbehouden. Aangedreven door ExtendOffice. | Sitemap
Microsoft en het Office-logo zijn handelsmerken of gedeponeerde handelsmerken van Microsoft Corporation in de Verenigde Staten en / of andere landen.
Beschermd door Sectigo SSL