Indholdsfortegnelse
Denne korte vejledning forklarer, hvordan du sletter hver anden række i Excel ved hjælp af filtrering eller VBA-kode. Du lærer også, hvordan du fjerner hver 3., 4. eller enhver anden N-te række.
Der er mange situationer, hvor du kan have brug for at slette alternative rækker i Excel-regneark. Du kan f.eks. ønske at beholde data for lige uger (række 2, 4, 6, 8 osv.) og flytte alle ulige uger (række 3, 5, 7 osv.) til et andet ark.
Generelt er det at slette hver anden række i Excel et spørgsmål om at vælge alternative rækker. Når rækkerne er valgt, kan du med et enkelt strejke på Slet knappen er alt, hvad der skal til. Længere henne i denne artikel vil du lære nogle få teknikker til hurtigt at vælge og slette hver anden eller hver N-te række i Excel.
Sådan slettes hver anden række i Excel ved at filtrere
En almindelig måde at slette alle andre rækker i Excel på er følgende: Først filtrerer du alternative rækker, derefter markerer du dem og sletter dem alle på én gang. De detaljerede trin følger nedenfor:
- Indtast en sekvens af nuller og ettaller i en tom kolonne ved siden af dine oprindelige data. Du kan hurtigt gøre dette ved at skrive 0 i den første celle og 1 i den anden celle og derefter kopiere de to første celler og indsætte dem nedad i kolonnen indtil den sidste celle med data.
Alternativt kan du bruge denne formel:
=MOD(ROW(),2)
Formlens logik er meget enkel: ROW-funktionen returnerer det aktuelle rækketal, MOD-funktionen dividerer det med 2 og returnerer resten afrundet til et helt tal.
Resultatet er, at der er 0 i alle lige rækker (fordi de divideres med 2 jævnt uden rest) og 1 i alle ulige rækker:
- Afhængigt af, om du vil slette lige eller ulige rækker, skal du filtrere enere eller nuller fra.
For at få det gjort, skal du vælge en celle i din Hjælper-kolonne, gå til Data faneblad> Sortere og filtrere gruppe, og klik på Filter knappen. Drop-down filterpilene vises i alle overskriftsceller. Du klikker på pileknappen i kolonnen Hjælper og markerer et af felterne:
- 0 for at slette lige rækker
- 1 for at slette ulige rækker
I dette eksempel skal vi fjerne de rækker med "0"-værdier, så vi filtrerer dem:
- Nu, hvor alle "1"-rækker er skjult, skal du vælge alle de synlige "0"-rækker, højreklikke på markeringen og klikke på Slet række :
- Ovenstående trin har efterladt dig med en tom tabel, men bare rolig, "1"-rækkerne er der stadig. For at gøre dem synlige igen, skal du blot fjerne auto-filteret ved at klikke på Filter knappen igen:
- Formlen i kolonne C genberegnes for de resterende rækker, men du har ikke længere brug for den. Du kan nu roligt slette kolonnen Hjælper-kolonnen:
Resultatet er, at kun de lige uger er tilbage i vores regneark, de ulige uger er væk!
Tip. Hvis du gerne vil flytte hver anden række til et andet sted i stedet for at slette dem helt, skal du først kopiere de filtrerede rækker og indsætte dem på et nyt sted, og derefter slette de filtrerede rækker.
Sådan sletter du alternative rækker i Excel med VBA
Hvis du ikke er villig til at spilde din tid på en triviel opgave som f.eks. at slette hver anden række i dine Excel-regneark, kan følgende VBA-makro automatisere processen for dig:
Sub Delete_Alternate_Rows_Excel() Dim SourceRange As Range Set SourceRange = Application.Selection Set SourceRange = Application.InputBox( "Range:" , "Vælg området" , SourceRange.Address, Type :=8) If SourceRange.Rows.Count>= 2 Then Dim FirstCell As Range Dim RowIndex As Integer Application.ScreenUpdating = False For RowIndex = SourceRange.Rows.Count - (SourceRange.Rows.Count Mod 2) To 1Trin -2 Set FirstCell = SourceRange.Cells(RowIndex, 1) FirstCell.EntireRow.Delete Next Application.ScreenUpdating = True End If End SubSådan sletter du hver anden række i Excel ved hjælp af makroen
Indsæt makroen i dit regneark på den sædvanlige måde via Visual Basic-editoren:
- Tryk på Alt + F11 for at åbne vinduet Visual Basic for Applications.
- Klik på på menulinjen øverst i menulinjen Indsæt > Modul , og indsæt ovenstående makro i Modul
- Tryk på tasten F5 for at køre makroen.
- En dialogboks vises og beder dig om at vælge et område. Vælg din tabel, og klik på OK:
Færdig! Alle andre rækker i det valgte område slettes:
Sådan sletter du hver N-te række i Excel
I denne opgave udvider vi den filtreringsteknik, som vi har brugt til at fjerne hver anden række. Forskellen ligger i den formel, som filtreringen er baseret på:
MOD(ROW()- m , n )Hvor:
- m er række nummeret på den første celle med data minus 1
- n er den N-te række, du ønsker at slette
Lad os sige, at dine data begynder i række 2, og at du vil slette hver 3. række. Så i din formel skal du n er lig med 3, og m er lig med 1 (række 2 minus 1):
=MOD(ROW() - 1, 3)
Hvis vores data begyndte i række 3, så m vil være lig med 2 (række 3 minus 1) osv. Denne korrektion er nødvendig for at nummerere rækkerne i rækkefølge, begyndende med nummer 1.
Formlen dividerer et relativt tal i rækken med 3 og returnerer resten efter divisionen. I vores tilfælde giver den nul for hver tredje række, fordi hvert tredje tal divideres med 3 uden rest (3,6,9 osv.):
Og nu udfører du de allerede velkendte trin for at filtrere "0"-rækker:
- Vælg en vilkårlig celle i tabellen, og klik på Filter på knappen på Data
- Filtrer kolonnen Hjælper for kun at vise "0"-værdier.
- Vælg alle de synlige "0"-rækker, højreklik og vælg Slet række fra kontekstmenuen.
- Fjern filteret, og slet kolonnen Hjælper.
På samme måde kan du slette hver 4., 5. eller enhver anden N-te række i Excel.
Tip. Hvis du har brug for at fjerne rækker med irrelevante data, vil følgende vejledning være nyttig: Sådan slettes rækker baseret på celleværdi.
Jeg takker for din læsning og håber at se dig på vores blog igen i næste uge.