Inhoudsopgave
Soms moeten we enkele specifieke rijen verbergen wanneer we onze grote dataset in Excel gebruiken voor een betere leesbaarheid. Het implementeren van VBA-macro is de meest effectieve, snelste en veiligste methode om elke bewerking in Excel uit te voeren. In dit artikel laten we u zien hoe u rijen in Excel verbergen op basis van verschillende criteria met behulp van de VBA-macro.
Werkboek downloaden
U kunt de gratis oefen Excel-werkmap hier downloaden.
Rijen verbergen met VBA.xlsm
14 Methoden met VBA om rijen in Excel te verbergen
In dit deel bespreken we 12 verschillende methoden met VBA naar rijen verbergen Het voorbeeld dat we in het hele artikel zullen gebruiken staat hieronder.
1. Embed VBA om een enkele rij in Excel te verbergen
Als u een enkele rij verbergen met VBA code volg dan de hieronder besproken stappen. In ons geval zullen we verberg rij nummer 5 ( Achternaam ) van onze dataset.
Stappen:
- Druk op Alt + F11 op uw toetsenbord of ga naar de tab Ontwikkelaar -> Visual Basic om te openen Visual Basic-editor .
- In het pop-up codevenster, klik in de menubalk op Invoegen -> Module .
- Kopieer de volgende code en plak die in het codevenster.
Sub HideSingleRow() Worksheets("Single").Range("5:5").EntireRow.Hidden = True End Sub
Uw code is nu klaar om te draaien.
Hier,
- Werkbladen("Enkel") = Stel de werkblad naam.
- Range("5:5") = Pass rij nummer 5 binnen de Bereik methode.
- Druk op F5 op uw toetsenbord of selecteer in de menubalk Run -> Run Sub/UserForm U kunt ook gewoon op de klein pictogram Play in de submenubalk om de macro uit te voeren.
Let op de afbeelding hieronder, rij nummer 5 wordt verborgen na het uitvoeren van de VBA code.
Lees meer: Formule om rijen in Excel te verbergen (7 methoden)
2. Macro invoegen om aaneengesloten rijen in Excel te verbergen
Je hebt geleerd hoe je een enkele rij kunt verbergen met VBA Maar stel, je wilt een reeks rijen verbergen die aaneengesloten Je kunt dat ook doen met VBA in Excel. We zullen verberg rijen nummer 5 tot 7 van onze bovenstaande dataset.
Stappen:
- Dezelfde manier als voorheen, open Visual Basic-editor van de Ontwikkelaar tab en Plaats a Module in het codevenster.
- Kopieer in het codevenster de volgende code en plak deze.
Sub HideContiguousRows() Werkbladen("Contiguous").Range("5:7").EntireRow.Hidden = True End Sub
Uw code is nu klaar om te draaien.
Hier,
- Werkbladen("Aaneengesloten") = Stel de werkblad naam.
- Range("5:7") = Pass rij nummer 5 tot 7 binnen de Bereik methode.
- Ren deze code en zie in de volgende afbeelding dat rijen 5 tot 7 zijn nu verborgen.
Lees meer: Rijen verbergen en verbergen in Excel (6 gemakkelijkste manieren)
3. Macro insluiten om niet aaneengesloten rijen te scheiden
Deze keer leer je hoe je rijen verbergen in Excel die niet-aaneengesloten met VBA Met onze dataset, de code om verberg rijen 5, 6, 8 en 9 worden hieronder gegeven.
Stappen:
- Zoals eerder aangetoond, is open Visual Basic-editor van de Ontwikkelaar tab en Plaats a Module in het codevenster.
- Kopieer in het codevenster de volgende code en plak deze.
Sub HideNonContiguousRows() Worksheets("Non-Contiguous").Range("5:6, 8:9").EntireRow.Hidden = True End Sub
Uw code is nu klaar om te draaien.
Hier,
- Werkbladen("Niet aaneengesloten") = Stel de werkblad naam.
- Range("5:6, 8:9") = Pass rij nummer 5 tot 6 en 8 tot 9 binnen de Bereik methode.
- Ren dit stukje code en zie dat rijen 5 tot 6 en 8 tot 9 zijn verborgen in het volgende plaatje.
Lees meer: Hoe rijen verbergen in Excel (6 effectieve methoden)
4. Macro om alle rijen met tekst in Excel te verbergen
Als u verberg alle rijen die tekst bevatten waarden, volg dan de onderstaande stappen.
Stappen:
- Open Visual Basic-editor van de Ontwikkelaar tab en Plaats a Module in het codevenster.
- Kopieer in het codevenster de volgende code en plak deze.
Sub HideAllRowsContainsText() LastRow = 1000 'Laten we aannemen dat er 1000 rijen zijn in de dataset For i = 1 To LastRow 'Loop door elke rij en controleer op vereiste voorwaarde 'Om alle rijen met tekstgegevens te verbergen Als IsNumeric(Range("C" & i)) = False Dan Rows(i).EntireRow.Hidden = True Next End Sub
Uw code is nu klaar om te draaien.
Hier,
- IsNumeric(Range("C" & i)) = De gegevens in onze dataset beginnen bij kolom C, dus we passeerden C binnen de Bereik methode.
- Ren deze code en u zult merken alle rijen die met tekst waarden zijn nu verborgen.
Lees meer: Hoe meerdere rijen in Excel te verbergen (9 methoden)
5. Macro om alle rijen met getallen in Excel te verbergen
En als je je wilt verbergen alle rijen die numerieke waarden bevatten met VBA code volg dan de onderstaande stappen.
Stappen:
- Open Visual Basic-editor van de Ontwikkelaar tab en Plaats a Module in het codevenster.
- Kopieer in het codevenster de volgende code en plak deze.
Sub HideAllRowsContainsNumbers() LastRow = 1000 'Laten we aannemen dat er 1000 rijen zijn in de dataset For i = 4 To LastRow 'Loop door elke rij en controleer op vereiste voorwaarde 'We stellen i = 4 omdat onze gegevens beginnen vanaf rij 4 'Om alle rijen met numerieke gegevens te verbergen Als IsNumeric(Range("C" & i)) = True Dan Rows(i).EntireRow.Hidden = True Next End Sub
Uw code is nu klaar om te draaien.
Hier,
- IsNumeric(Range("C" & i)) = De gegevens in onze dataset beginnen bij kolom C, dus we passeerden C binnen de Bereik methode.
- Ren deze code en merk op dat alle rijen die met numerieke waarden zijn nu verborgen.
Lees meer: Dubbele rijen verbergen op basis van één kolom in Excel (4 methoden)
6. Macro om rijen met nul (0) te verbergen in Excel
Stel dat u alleen de rijen van een specifieke kolom wilt verbergen die met 0 (nul) Kijk naar de volgende dataset waar de E kolom houdt 0 in rij 7 en 82 in rij 10 We zullen leren hoe we verberg alleen de rij die 0 bevat ( rij 7 ) met VBA in Excel.
Stappen:
- Open Visual Basic-editor van de Ontwikkelaar tab en Plaats a Module in het codevenster.
- Kopieer in het codevenster de volgende code en plak deze.
Sub HideRowContainsZero() LastRow = 1000 'Laten we aannemen dat er 1000 rijen zijn in de dataset For i = 4 To LastRow 'Loop door elke rij en controleer op vereiste voorwaarde 'We stellen i = 4 omdat onze gegevens beginnen vanaf rij 4 'Om de rij die 0 bevat in de E-kolom te verbergen Als Range("E" & i) = 0 Dan Rows(i).EntireRow.Hidden = True Next End Sub
Uw code is nu klaar om te draaien.
- Ren deze code en merk op dat de rij ( rij 7 ) die 0 in kolom E is nu verborgen terwijl rij 10 dat draagt 82 is niet verborgen.
Lees meer: Hoe lege rijen te verbergen in Excel VBA (4 nuttige methoden)
7. Macro implementeren om rijen met negatieve waarden in Excel te verbergen
Net zoals u rijen met nul uit dezelfde kolom kunt verbergen, kunt u rijen met negatieve waarden verbergen ook. Met de onderstaande dataset waar kolom E zowel negatieve als positieve waarden bevat, zullen we de code zien die alleen de negatieve verbergt.
Stappen:
- Open Visual Basic-editor van de Ontwikkelaar tab en Plaats a Module in het codevenster.
- Kopieer in het codevenster de volgende code en plak deze.
Sub HideRowContainsNegative() LastRow = 1000 'Laten we aannemen dat er 1000 rijen zijn in de dataset For i = 4 To LastRow 'Loop door elke rij en controleer op vereiste voorwaarde 'We stellen i = 4 omdat onze gegevens beginnen vanaf rij 4 'Om de rij met negatieve waarden in de E-kolom te verbergen Als IsNumeric(Range("E" & i)) = True Then If Range("E" & i) <0 ThenRows(i).EntireRow.Hidden = True End If Next End Sub
Uw code is nu klaar om te draaien.
- Ren deze code en merk op dat rij 7 die een negatieve waarde (-10) in kolom E is nu verborgen terwijl rij 10 dat draagt 82 is niet verborgen.
8. VBA inbouwen om rijen met positieve waarden in Excel te verbergen
Deze keer met de onderstaande dataset waarin kolom E beide nul positieve waarden bevat, zullen we de VBA code die verbergt alleen het positieve .
Stappen:
- Open Visual Basic-editor van de Ontwikkelaar tab en Plaats a Module in het codevenster.
- Kopieer in het codevenster de volgende code en plak deze.
Sub HideRowContainsPositive() LastRow = 1000 'Laten we aannemen dat er 1000 rijen zijn in de dataset For i = 4 To LastRow 'Loop door elke rij en controleer op de vereiste voorwaarde 'We stellen i = 4 omdat onze gegevens beginnen vanaf rij 4 'Om de rij met positieve waarden in de kolom E te verbergen Als IsNumeric(Range("E" & i)) = True Then If Range("E" & i)> 0 ThenRows(i).EntireRow.Hidden = True End If Next End Sub
Uw code is nu klaar om te draaien.
- Ren deze code en merk op dat rij 7 die een positieve waarde (55) in kolom E is nu verborgen terwijl rij 10 dat draagt 0 is niet verborgen.
Lees meer: VBA om rijen te verbergen op basis van celwaarde in Excel (14 voorbeelden)
9. Macro om rijen met oneven nummers in Excel te verbergen
U kunt verberg rijen met oneven nummers als hun waarde. In het voorbeeld dat we aan het begin van dit artikel lieten zien, kolom E houdt zowel oneven als even nummers in rijen 7 en 10 We zullen de code van de rij verbergen dat houdt oneven nummers alleen.
Stappen:
- Open Visual Basic-editor van de Ontwikkelaar tab en Plaats a Module in het codevenster.
- Kopieer in het codevenster de volgende code en plak deze.
Sub HideRowContainsOdd() LastRow = 1000 'Laten we aannemen dat er 1000 rijen zijn in de dataset For i = 4 To LastRow 'Loop door elke rij en controleer op de vereiste voorwaarde 'We stellen i = 4 omdat onze gegevens beginnen vanaf rij 4 'Om de rij met positieve waarden in de kolom E te verbergen Als IsNumeric(Range("E" & i)) = True Then Als Range("E" & i) Mod 2 = 1 ThenRows(i).EntireRow.Hidden = True End If Next End Sub
Uw code is nu klaar om te draaien.
- Ren dit stukje code en zie dat alleen rij 7 die een oneven aantal (55) in kolom E is nu verborgen terwijl rij 10 die een even aantal (82) is niet verborgen.
10. VBA voor het verbergen van rijen met even getallen in Excel
Evenzo kunt u rijen met even nummers verbergen als hun waarde. In het voorbeeld dat we aan het begin van dit artikel lieten zien, kolom F houdt zowel oneven als even nummers in rijen 7 en 10 We zullen de code van de rij verbergen dat houdt even nummers alleen.
Stappen:
- Open Visual Basic-editor van de Ontwikkelaar tab en Plaats a Module in het codevenster.
- Kopieer in het codevenster de volgende code en plak deze.
Sub HideRowContainsEven() LastRow = 1000 'Laten we aannemen dat er 1000 rijen zijn in de dataset For i = 4 To LastRow 'Loop door elke rij en controleer op vereiste voorwaarde 'We stellen i = 4 omdat onze gegevens beginnen vanaf rij 4 'Om de rij met positieve waarden in F kolom te verbergen Als IsNumeric(Range("F" & i)) = True Dan Als Range("F" & i) Mod 2 = 0 DanRows(i).EntireRow.Hidden = True End If Next End Sub
Uw code is nu klaar om te draaien.
- Ren deze code en zie dat alleen rij 7 die een even getal (100) in kolom F is nu verborgen terwijl rij 10 die een oneven aantal (75) is niet verborgen.
Lees meer: Excel VBA: Alle rijen in Excel verbergen (5 praktische voorbeelden)
11. Macro invoegen om rijen te verbergen die groter zijn dan een specifieke voorwaarde
U kunt rijen verbergen die groter zijn dan een specifieke waarde met VBA Excel. Stel dat u de rijen wilt verbergen van kolom E waarbij de waarde meer dan 80 Zo doe je dat:
Stappen:
- Open Visual Basic-editor van de Ontwikkelaar tab en Plaats a Module in het codevenster.
- Kopieer in het codevenster de volgende code en plak deze.
Sub HideRowContainsGreater() LastRow = 1000 'Laten we aannemen dat er 1000 rijen zijn in de dataset For i = 4 To LastRow 'Loop door elke rij en controleer op de vereiste voorwaarde 'We stellen i = 4 omdat onze gegevens beginnen vanaf rij 4 'Om de rij met positieve waarden in de E-kolom te verbergen Als IsNumeric(Range("E" & i)) = True Then If Range("E" & i)> 80 ThenRows(i).EntireRow.Hidden = True End If Next End Sub
Uw code is nu klaar om te draaien.
- Ren deze code en zie dat alleen rij 10 die bevatte 82 (die groter is dan 80) in kolom E is nu verborgen terwijl rij 7 dat draagt 55 is niet verborgen.
Lees meer: Rijen verbergen op basis van celwaarde met voorwaardelijke opmaak in Excel
12. Macro insluiten om rijen te dekken die minder zijn dan een specifieke voorwaarde in Excel
U kunt ook rijen verbergen die kleiner zijn dan een specifieke waarde met VBA Excel. Stel dat u de rijen wilt verbergen van kolom E waarbij de waarde minder dan 80 Zo doe je dat:
Stappen:
- Open Visual Basic-editor van de Ontwikkelaar tab en Plaats a Module in het codevenster.
- Kopieer in het codevenster de volgende code en plak deze.
Sub HideRowContainsLess() LastRow = 1000 'Laten we aannemen dat er 1000 rijen zijn in de dataset For i = 4 To LastRow 'Loop door elke rij en controleer op de vereiste voorwaarde 'We stellen i = 4 omdat onze gegevens beginnen vanaf rij 4 'Om de rij met positieve waarden in de E-kolom te verbergen Als IsNumeric(Range("E" & i)) = True Then If Range("E" & i) <80 ThenRows(i).EntireRow.Hidden = True End If Next End Sub
Uw code is nu klaar om te draaien.
- Ren deze code en zie dat alleen rij 7 die bevatte 55 (die minder dan 80 is) in kolom E is nu verborgen terwijl rij 10 dat is dragend 82 is niet verborgen.
13. Rijen verbergen op basis van celtekstwaarde met macro
Stel dat u een rij met een specifieke tekst verbergen waarde. In ons geval geven we een voorbeeld met de rij die het woord " Chemie ", rij 6 en geef je de code om die rij te verbergen.
Stappen:
- Open Visual Basic-editor van de Ontwikkelaar tab en Plaats a Module in het codevenster.
- Kopieer in het codevenster de volgende code en plak deze.
Sub HideRowCellTextValue() StartRow = 4 LastRow = 10 iCol = 4 Voor i = StartRow tot LastRow Als Cells(i, iCol).Value "Chemistry" Dan Cells(i, iCol).EntireRow.Hidden = False Anders Cells(i, iCol).EntireRow.Hidden = True End If Next i End Sub
Uw code is nu klaar om te draaien.
Hier,
- StartRij = 4 -> Eerste rij van de dataset.
- LastRow = 10 -> Laatste rij van de dataset.
- iCol = 4 -> De adres van de kolom dat bevat de tekst waarde.
- Ren deze code en merk op dat rij nummer 6 die bestaat uit het woord " Chemie " is verborgen.
14. Macro om rijen te verbergen op basis van numerieke waarde in Excel
Eerder hebt u gezien hoe u een rij kunt verbergen op basis van de celtekstwaarde, deze keer leert u hoe u dat doet als de waarde is numeriek In ons geval geven we een voorbeeld met de rij die de numerieke waarde " 87 ", rij 7 en geef je de code om die rij te verbergen.
Stappen:
- Open Visual Basic-editor van de Ontwikkelaar tab en Plaats a Module in het codevenster.
- Kopieer in het codevenster de volgende code en plak deze.
Sub HideRowCellNumValue() StartRow = 4 LastRow = 10 iCol = 4 For i = StartRow To LastRow If Cells(i, iCol).Value "87" Then Cells(i, iCol).EntireRow.Hidden = False Else Cells(i, iCol).EntireRow.Hidden = True End If Next i End Sub
Uw code is nu klaar om te draaien.
Hier,
- StartRij = 4 -> Eerste rij van de dataset.
- LastRow = 10 -> Laatste rij van de dataset.
- iCol = 4 -> De adres van de kolom dat bevat de tekst waarde.
- Ren deze code en merk op dat rij nummer 7 die bestaat uit de numerieke waarde " 87 " is verborgen.
Lees meer: Hoe rijen te verbergen op basis van celwaarde in Excel (5 methoden)
Conclusie
Dit artikel liet zien hoe je rijen verbergen in Excel met VBA Ik hoop dat dit artikel nuttig voor je is geweest. Voel je vrij om vragen te stellen als je vragen hebt over het onderwerp.