Slik sletter du annenhver rad i Excel (eller hver andre rad)

Se video - Slett annenhver rad i Excel

Noen ganger kan det hende du trenger å slette annenhver rad (dvs. alternative rader) eller hver tredje/fjerde/femte rad i Excel.

Et eksempel på dette kan være når du har ukentlige data, og du bare vil ha dataene i like uker eller merkelige uker. En annen kan være når du får en datadump fra en database, og alle nyttige data er bare i hver andre eller tredje rad.

Selv om du alltid har muligheten til å velge og slette rader manuelt, er dette ineffektivt i tilfelle du har et stort datasett.

Det finnes bedre måter å gjøre dette på.

I denne opplæringen vil jeg vise deg et par måter å slette annenhver rad i Excel ved hjelp av en enkel filtreringsteknikk. Og hvis du er kul med å bruke en VBA -makrokode, har jeg også gitt en kort VBA -kode som gjør det med et enkelt klikk. Metodene er vist i dette opplæringsarbeidet for alle versjoner av Excel (2007, 2010, 2013 og 2016)

Selv om sletting av annenhver rad i Excel kan være ganske enkelt, kan det være en utfordring å slette annenhver kolonne. Dette er fordi du ikke kan filtrere kolonner i Excel (måten du kan filtrere rader). I den siste delen av denne opplæringen vil jeg også vise deg noen måter å slette alternative kolonner (eller hver niende kolonne) i Excel.

Slett annenhver rad ved å filtrere datasettet (ved hjelp av formel)

Hvis du på en eller annen måte kunne filtrere alle de jevne radene eller de merkelige radene, ville det være superenkelt å slette disse radene/postene.

Selv om det ikke er noen innebygd funksjon for å gjøre dette, kan du bruke en hjelperkolonne til å først dele radene inn i oddetall og partall, og deretter filtrere basert på hjelperkolonnens verdi.

Anta at du har et datasett som vist nedenfor, som har salgsdata for hver salgsrepresentant for to regioner (USA og Canada), og du vil slette dataene for Canada.

Nedenfor er trinnene for å først filtrere og deretter slette annenhver rad (som har data for Canada):

  1. Skriv inn teksten i cellen ved siden av den siste kolonneoverskriften HelperColumn (eller hvilken som helst overskriftstekst du vil at hjelpekolonnen skal ha)
  2. Skriv inn følgende formel i cellen under hjelperens kolonneoverskrift: = ISEVEN (RAD ()). Kopier denne formelen for alle cellene. Denne formelen returnerer SANN for alle jevne rader og FALSK for alle ODD -rader
  3. Velg hele datasettet (inkludert cellene der vi skrev inn formelen i trinnet ovenfor).
  4. Klikk kategorien Data
  5. Klikk på Filter -ikonet. Dette vil bruke et filter på alle overskriftene i datasettet
  6. Klikk på Filter -ikonet i HelperColumn -cellen.
  7. Fjern markeringen av det SANNE alternativet (så bare FALSK alternativet er valgt)
  8. Klikk OK. Dette filtrerer dataene og viser bare postene der HelperColumn -verdien er FALSK.
  9. Velg alle de filtrerte cellene i hjelperkolonnen (unntatt overskriften)
  10. Høyreklikk på en av de valgte cellene og klikk på "Slett rad"
  11. Klikk på OK i dialogboksen som åpnes. Dette vil slette alle de synlige postene, og du vil bare se overskriftsraden per nå.
  12. Klikk på kategorien Data, og klikk deretter på Filter -ikonet. Dette vil fjerne filteret, og du vil kunne se alle de resterende postene.

Trinnene ovenfor filtrerer annenhver rad i datasettet og sletter deretter radene.

Ikke bekymre deg for hjelperkolonnens verdier på dette stadiet. De resulterende dataene har bare radene for USA, og alle Canada -radene blir slettet. Du kan slette hjelperkolonnen nå.

Hvis du vil slette annenhver rad fra den første raden og fremover, velger du alternativet TRUE i trinn 7 og fjerner merket av FALSE -alternativet.

Merk: Når du sletter radene i Excel ved hjelp av metoden ovenfor, sletter den også alle dataene du kan ha i hele (bortsett fra den i datasettet). Når du bruker denne metoden, må du kontrollere at du ikke har noe til venstre og høyre for datasettet du sletter.

Selv om metoden ovenfor er flott, har den to ulemper:

  1. Du må legge til en ny kolonne ( HelperColumn i vårt eksempel ovenfor)
  2. Det kan være tidkrevende hvis du må slette alternative rader, gjør dette ofte
Relatert opplæring: Slett rader basert på en celleverdi (eller tilstand) i Excel

Slett hver niende rad ved å filtrere datasettet (ved hjelp av formel)

I metoden ovenfor viste jeg deg hvordan du sletter annenhver rad (alternativ rad) i Excel.

Og du kan bruke den samme logikken til å slette hver tredje eller fjerde rad i Excel også.

Anta at du har et datasett som vist nedenfor, og du vil slette hver tredje rad.

Trinnene for å slette hver tredje rad er nesten de samme som dekket i delen ovenfor (for å slette alternative rader). Den eneste forskjellen er i formelen som ble brukt i trinn 2.

Nedenfor er trinnene for å gjøre dette:

  1. Skriv inn teksten i cellen ved siden av den siste kolonneoverskriften HelperColumn (eller hvilken som helst overskriftstekst du vil at hjelpekolonnen skal ha)
  2. Skriv inn følgende formel i cellen under hjelpekolonneoverskriften: = MOD (RAD (), 3) = 1. Denne formelen returnerer SANN for hver tredje rad og FALSK for hver annen rad.
  3. Velg hele datasettet (inkludert cellene der vi skrev inn formelen i trinnet ovenfor).
  4. Klikk kategorien Data
  5. Klikk på Filter -ikonet. Dette vil bruke et filter på alle overskriftene i datasettet
  6. Klikk på Filter -ikonet i HelperColumn -cellen.
  7. Fjern markeringen av det SANNE alternativet (så bare FALSK alternativet er valgt)
  8. Klikk OK. Dette filtrerer dataene og viser bare postene der HelperColumn -verdien er FALSK.
  9. Velg alle cellene i hjelperkolonnen
  10. Høyreklikk på en av de valgte cellene og klikk på Slett rad
  11. Klikk på OK i dialogboksen som åpnes. Dette vil slette alle de synlige postene, og du vil bare se overskriftsraden per nå.
  12. Klikk på kategorien Data, og klikk deretter på Filter -ikonet. Dette vil fjerne filteret, og du vil kunne se alle de resterende postene.

Trinnene ovenfor vil slette hver tredje rad fra datasettet, og du vil få de resulterende dataene som vist nedenfor.

Ikke bekymre deg for hjelperkolonnens verdier på dette stadiet. Du kan slette hjelperkolonnen nå.

Formelen som ble brukt i trinn 2 bruker MOD -funksjonen - som gir resten når det ene tallet er delt med det andre. Her har jeg brukt ROW -funksjonen for å få radnummeret og det er delt med 3 (fordi vi vil slette hver tredje rad).

Siden datasettet vårt starter fra andre rad og fremover (dvs. rad #2 inneholder den første posten), bruker jeg følgende formel:= MOD (RAD (), 3) = 1

Jeg likestiller det til 1, og for hver tredje rad vil MOD -formelen gi resten som 1.

Du kan justere formelen deretter. For eksempel, hvis datasettet din første post starter fra tredje rad og utover, vil formelen være = MOD (RAD (), 3) = 2

Slett hver annen rad (eller n. Rad) automatisk med VBA -makro (hurtigmetode)

Hvis du må slette annenhver rad (eller hver niende rad) ganske ofte, kan du bruke en VBA -kode og ha den tilgjengelig i verktøylinjen for hurtig tilgang. Dette lar deg raskt slette alternative rader med et enkelt klikk.

Nedenfor er koden som først ber deg velge området du vil slette alternative rader i, og deretter slette annenhver rad i det valgte datasettet.

Sub Delete_Every_Other_Row () Dim Rng As Range Set Rng = Application.InputBox ("Select the Range (Excluding headers)", "Range Selection", Type: = 8) For i = Rng.Rows.Count To 1 Step -2 If i Mod 2 = 0 Deretter Rng.Rows (i). Slett End If Next i End Sub

Når du kjører koden ovenfor, vil den først be deg om å velge celleområdet. Når du har valgt, går den gjennom hver rad og sletter hver andre rad.

Hvis du vil slette hver tredje rad i stedet, kan du bruke koden nedenfor:

Sub Delete_Every_Third_Row () Dim Rng As Range Set Rng = Application.InputBox ("Select the Range (Excluding headers)", "Range Selection", Type: = 8) For i = Rng.Rows.Count To 1 Step -3 If i Mod 3 = 0 Deretter Rng.Rows (i). Slett End If Next i End Sub

Hvor skal jeg legge denne VBA -makrokoden?

Du må plassere denne koden i en vanlig modul i VB -editoren i Excel.

Nedenfor er trinnene for å åpne Vb Editor, legge til en modul og plassere koden i den:

  1. Kopier VBA -koden ovenfor.
  2. Gå til kategorien Utvikler.
  3. Klikk på Visual Basic.
  4. Høyreklikk på et av arbeidsbokobjektene i VB Editor.
  5. Gå til Sett inn og klikk på Modul.
  6. Lim inn ovennevnte VBA -kode i modulen.
  7. Lukk VB Editor.

Når du har koden i VB Editor, kan du bruke følgende metoder for å kjøre koden:

  • Kjør en makro fra VB Editor (ved å klikke på den grønne avspillingsknappen i VB Editor verktøylinjen)
  • Ved å plassere markøren på en hvilken som helst linje i koden og bruke F5 -tasten
  • Ved å tilordne makroen til en knapp/form
  • Ved å legge til makroen på verktøylinjen Hurtig tilgang
Her er en detaljert opplæring om hvordan du kjører en makro i Excel.

Hvis du må gjøre dette ofte, kan du vurdere å legge VBA -koden til Personal Macro Workbook. På denne måten vil den alltid være tilgjengelig for deg i alle arbeidsbøkene.

Når du har en VBA-kode i en arbeidsbok, må du lagre den som en makroaktivert arkivert (med .XLSM-utvidelsen)

Merk: Siden eventuelle endringer gjort av VBA-koden er irreversible, er det best å først lage en sikkerhetskopi av arbeidsboken/regnearket og deretter kjøre denne koden.

Slett annenhver kolonne (eller hver niende kolonne)

Det er enkelt å slette hver alternative rad eller hver tredje/fjerde rad, ettersom du kan bruke filteralternativet. Alt du trenger å gjøre er å bruke en formel som identifiserer alternative rader (eller hver tredje/fjerde rad) og filtrerer disse radene.

Dessverre fungerer ikke den samme metoden med kolonner - siden du ikke kan filtrere kolonner slik du filtrerer rader.

Så hvis du må slette annenhver kolonne (eller hver tredje/fjerde/n. Kolonne), må du være litt mer kreativ.

I denne delen vil jeg vise deg to metoder du kan bruke til å slette annenhver kolonne i Excel (og du kan bruke samme metode for å slette hver tredje/fjerde/nte kolonne hvis du vil).

Slett alternative kolonner ved hjelp av formler og sorteringsmetode

Anta at du har et datasett som vist nedenfor, og at du vil slette hver annen kolonne (unntatt toppkolonnen A)

Trikset her ville være å identifisere alternative kolonner ved hjelp av en formel og deretter sortere kolonnene basert på den formelen. Når du har sortert kolonnene sammen, kan du velge og slette dette manuelt.

Nedenfor er trinnene for å slette annenhver kolonne i Excel:

  1. Sett inn en rad over overskriftsraden (høyreklikk på hvilken som helst celle i overskriften, klikk på Sett inn og klikk deretter på Hele radalternativet)
  2. Skriv inn følgende formel i cellen over kolonnen til venstre i datasettet, og kopier for alle cellene: = MOD (COLUMN (), 2)
  3. Konverter formelverdiene til tall. For å gjøre dette, kopier cellene, høyreklikk og gå til Lim inn spesial -> Lim inn verdier.
  4. Velg hele datasettet (unntatt overskrifter i kolonnen). I dette eksemplet har jeg valgt B1: G14 (og IKKE kolonne A)
  5. Klikk kategorien Data
  6. Klikk på Sorter -ikonet
  7. Gjør følgende endringer i dialogboksen Sorter:
    • Klikk på "Alternativer" -knappen, og i dialogboksen som åpnes, klikk på "Sorter fra venstre til høyre" og klikk deretter OK
    • Velg Rad 1. I rullegardinlisten Sorter etter, velg Dette er raden som har formelresultatene
    • I rullegardinlisten Bestilling velger du Minste til største.
  8. Klikk OK

Trinnene ovenfor sorterer alle kolonnene og samler alle de alternative kolonnene på ett sted (på slutten).

Nå kan du velge alle disse kolonnene (som formelverdien er 1 for), og slette disse.

Selv om dette ikke er den beste løsningen, får det fortsatt arbeidet gjort.

Hvis du vil slette hver tredje kolonne eller hver fjerde kolonne, må du justere formelen deretter.

Relatert opplæring: Slik sorterer du i Excel (etter rader, kolonner, farger, datoer og tall)

Slett alternative kolonner ved hjelp av VBA

En annen rask måte å slette alternative kolonner på er å bruke VBA -koden nedenfor:

Sub Delete_Every_Other_Column () Dim Rng As Range Set Rng = Application.InputBox ("Select the Range (Excluding headers)", "Range Selection", Type: = 8) For i = Rng.Columns.Count To 1 Step -2 If i Mod 2 = 0 Deretter Rng.Columns (i). Slett End If Next i End Sub

Koden ovenfor ber deg velge et celleområde som har kolonnene. Her må du velge kolonnene unntatt den som har overskriften.

Når du har spesifisert celleområdet med dataene, bruker den en For Loop og sletter annenhver kolonne.

Hvis du vil slette hver tredje kolonne, kan du bruke koden nedenfor (og justere deretter for å slette den niende kolonnen)

Sub Delete_Every_Third_Column () Dim Rng As Range Set Rng = Application.InputBox ("Select the Range (Excluding headers)", "Range Selection", Type: = 8) For i = Rng.Columns.Count To 1 Step -3 If i Mod 3 = 0 Deretter Rng.Kolonner (i). Slett Slutt hvis neste i Avslutt Sub

Trinnene om hvor du skal plassere denne VBA -koden og hvordan du bruker den, dekkes i avsnittet ovenfor med tittelen - "Slett hver annen rad (eller n. Rad) automatisk ved hjelp av VBA -makro (hurtigmetode)"

Håper du fant denne Excel -opplæringen nyttig.

Du vil bidra til utvikling av området, dele siden med vennene dine

wave wave wave wave wave