Hoe gegevens filteren uit de vervolgkeuzelijstselectie in Excel?
In Excel kunnen de meesten van ons gegevens filteren met behulp van de filterfunctie. Maar heb je ooit geprobeerd gegevens uit de vervolgkeuzelijst te filteren? Als ik bijvoorbeeld een item uit de vervolgkeuzelijst selecteer, wil ik dat de bijbehorende rijen worden uitgefilterd zoals in het volgende screenshot. In dit artikel zal ik het hebben over het filteren van gegevens met behulp van de vervolgkeuzelijst in een of twee werkbladen.
Filter gegevens uit vervolgkeuzelijstselectie in één werkblad met hulpformules
Filter gegevens uit vervolgkeuzelijstselectie in twee werkbladen met VBA-code
Filter gegevens uit vervolgkeuzelijstselectie in één werkblad met hulpformules
Om gegevens uit de vervolgkeuzelijst te filteren, kunt u enkele hulpformulekolommen maken, voer de volgende stappen een voor een uit:
1. Voeg eerst de vervolgkeuzelijst in. Klik op een cel waarin u de vervolgkeuzelijst wilt invoegen en klik op Data > Data Validation > Data Validation, zie screenshot:
2. In de pop-out Data Validation dialoogvenster onder het Instellingen tab, selecteer Lijst van het Allow vervolgkeuzelijst en klik vervolgens op knop om de datalijst te kiezen waarop u de vervolgkeuzelijst wilt maken, zie screenshot:
3. En klik vervolgens op OK knop, wordt de vervolgkeuzelijst in één keer ingevoegd en kiest u een item uit de vervolgkeuzelijst en voert u deze formule in: = RIJEN ($ A $ 2: A2) (A2 is de eerste cel in de kolom die de vervolgkeuzelijst bevat) in cel D2 en sleep vervolgens de vulgreep naar de cellen om deze formule toe te passen, zie screenshot:
4. Ga door met het invoeren van deze formule: = ALS (A2 = $ H $ 2, D2, "") in cel E2 en sleep vervolgens de vulgreep naar beneden om deze formule te vullen, zie screenshot:
Note: In de bovenstaande formule:A2 is de eerste cel in de kolom die de waarde van de vervolgkeuzelijst bevat,H2 is de cel waar de vervolgkeuzelijst is geplaatst, D2 is de eerste hulpkolomformule.
5. En typ vervolgens deze formule: = IFERROR (SMALL ($ E $ 2: $ E $ 17, D2), "") in cel F2 en sleep vervolgens de vulgreep naar de cellen om deze formule te vullen, zie screenshot:
Note: In de bovenstaande formule: E2: E17 is de tweede helperformulecel, D2 is de eerste cel in de eerste hulpformulekolom.
6. Nadat u de kolommen van de hulpformule hebt ingevoegd, moet u het gefilterde resultaat naar een andere locatie uitvoeren, pas deze formule toe: =IFERROR(INDEX($A$2:$C$17,$F2,COLUMNS($J$2:J2)),"") in cel J2, en sleep vervolgens de vulgreep van J2 naar L2, en het eerste record van de gegevens op basis van de vervolgkeuzelijst is geëxtraheerd, zie screenshot:
Note: In de bovenstaande formule: A2: C17 zijn de originele gegevens die u wilt filteren, F2 is de derde hulpformulekolom, J2 is de cel waar u het filterresultaat wilt uitvoeren.
7. En sleep vervolgens de vulgreep naar de cellen om alle bijbehorende gefilterde records weer te geven, zie screenshot:
8. Vanaf nu, wanneer u een item uit de vervolgkeuzelijst selecteert, worden alle rijen op basis van deze selectie in één keer gefilterd, zie screenshot:
Filter gegevens uit vervolgkeuzelijstselectie in twee werkbladen met VBA-code
Als uw vervolgkeuzelijstcel in Blad1 en de gefilterde gegevens in Blad2, wanneer u een item uit de vervolgkeuzelijst kiest, wordt een ander blad uitgefilterd. Hoe kon je deze klus in Excel afmaken?
De volgende VBA-code kan je een plezier doen, doe dit als volgt:
1. Klik met de rechtermuisknop op de bladtab die de vervolgkeuzelijstcel bevat en kies vervolgens Bekijk code vanuit het contextmenu, in het geopende Microsoft Visual Basic voor applicaties venster, kopieer en plak de volgende code in de lege module:
VBA-code: filter gegevens uit vervolgkeuzelijstselectie in twee bladen:
Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice
On Error Resume Next
If Not Intersect(Range("A2"), Target) Is Nothing Then
Application.EnableEvents = False
If Range("A2").Value = "" Then
Worksheets("Sheet2").ShowAllData
Else
Worksheets("Sheet2").Range("A2").AutoFilter 1, Range("A2").Value
End If
Application.EnableEvents = True
End If
End Sub
Note: In de bovenstaande code: A2 is de cel die de vervolgkeuzelijst bevat, en Sheet2 is het werkblad de gegevens die u wilt filteren. Het nummer 1 in het script: AutoFilter 1 is het kolomnummer waarop u wilt filteren. U kunt ze naar wens aanpassen.
2. Vanaf nu, wanneer u een item uit de vervolgkeuzelijst in Sheet1 selecteert, en de bijbehorende gegevens worden uitgefilterd in Sheet2, zie screenshot:
Beste Office-productiviteitstools
Geef uw Excel-vaardigheden een boost met Kutools voor Excel en ervaar efficiëntie als nooit tevoren. Kutools voor Excel biedt meer dan 300 geavanceerde functies om de productiviteit te verhogen en tijd te besparen. Klik hier om de functie te krijgen die u het meest nodig heeft...
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!