Obsah
Tento krátký návod vysvětluje, jak odstranit každý druhý řádek v aplikaci Excel pomocí filtrování nebo kódu VBA. Dozvíte se také, jak odstranit každý 3., 4. nebo jakýkoli další N-tý řádek.
Existuje mnoho situací, kdy můžete potřebovat odstranit alternativní řádky v pracovních listech aplikace Excel. Například můžete chtít zachovat data pro sudé týdny (řádky 2, 4, 6, 8 atd.) a přesunout všechny liché týdny (řádky 3, 5, 7 atd.) na jiný list.
Odstranění každého dalšího řádku v aplikaci Excel se obecně omezuje na výběr alternativních řádků. Jakmile jsou řádky vybrány, stačí jeden tah na klávesnici. Odstranit Stačí k tomu tlačítko . Dále se v tomto článku seznámíte s několika technikami, jak v Excelu rychle vybrat a odstranit každý druhý nebo každý N-tý řádek.
Jak odstranit každý druhý řádek v aplikaci Excel pomocí filtrování
Běžný způsob, jak v Excelu vymazat každý druhý řádek, je v podstatě následující: nejprve vyfiltrujete střídavé řádky, pak je vyberete a všechny najednou odstraníte. Podrobný postup následuje níže:
- Do prázdného sloupce vedle původních dat zadejte posloupnost nul a jedniček. To můžete rychle provést tak, že do první buňky napíšete 0 a do druhé 1, pak zkopírujete první dvě buňky a vložíte je dolů do sloupce až k poslední buňce s daty.
Můžete také použít tento vzorec:
=MOD(ROW(),2)
Logika vzorce je velmi jednoduchá: funkce ROW vrátí aktuální číslo řádku, funkce MOD ho vydělí dvěma a vrátí zbytek zaokrouhlený na celé číslo.
Výsledkem je, že ve všech sudých řádcích je 0 (protože se dělí 2 rovnoměrně beze zbytku) a ve všech lichých řádcích 1:
- Podle toho, zda chcete odstranit sudé nebo liché řádky, odfiltrujte jedničky nebo nuly.
Chcete-li to provést, vyberte libovolnou buňku ve sloupci Pomocník, přejděte do části Data karta> Třídění a filtrování a klikněte na Filtr Tlačítko Rozbalovací šipky filtru se zobrazí ve všech buňkách záhlaví. Kliknete na tlačítko se šipkou ve sloupci Pomocník a zaškrtnete jedno z políček:
- 0 pro odstranění sudých řádků
- 1 pro odstranění lichých řádků
V tomto příkladu chceme odstranit řádky s hodnotami "0", takže je vyfiltrujeme:
- Nyní, když jsou všechny řádky "1" skryté, vyberte všechny viditelné řádky "0", klikněte na výběr pravým tlačítkem myši a klikněte na možnost Odstranit řádek :
- Po výše uvedeném kroku jste získali prázdnou tabulku, ale nebojte se, řádky "1" v ní stále zůstávají. Chcete-li je opět zviditelnit, jednoduše odstraňte automatický filtr kliknutím na tlačítko Filtr znovu tlačítko :
- Vzorec ve sloupci C se přepočítá pro zbývající řádky, ale už ho nepotřebujete. Nyní můžete sloupec Pomocník bezpečně odstranit:
Výsledkem je, že v našem pracovním listu zůstaly pouze sudé týdny, liché týdny jsou pryč!
Tip: Pokud chcete každý další řádek přesunout jinam, místo abyste je úplně odstranili, nejprve zkopírujte filtrované řádky a vložte je do nového umístění a poté filtrované řádky odstraňte.
Jak odstranit alternativní řádky v aplikaci Excel pomocí VBA
Pokud nechcete ztrácet čas triviálním úkolem, jako je odstranění každého druhého řádku v listech aplikace Excel, následující makro VBA může tento proces automatizovat:
Sub Delete_Alternate_Rows_Excel() Dim SourceRange As Range Set SourceRange = Application.Selection Set SourceRange = Application.InputBox( "Range:" , "Select the range" , 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 1Krok -2 Set FirstCell = SourceRange.Cells(RowIndex, 1) FirstCell.EntireRow.Delete Next Application.ScreenUpdating = True End If End SubJak odstranit každý druhý řádek v aplikaci Excel pomocí makra
Vložte makro do pracovního listu obvyklým způsobem prostřednictvím editoru jazyka Visual Basic:
- Stisknutím kláves Alt + F11 otevřete okno Visual Basic for Applications.
- Na horním panelu nabídky klikněte na Vložte > Modul a vložte výše uvedené makro do Modul
- Stisknutím klávesy F5 makro spustíte.
- Zobrazí se dialogové okno s výzvou k výběru rozsahu. Vyberte tabulku a klikněte na tlačítko OK:
Hotovo! Každý další řádek ve vybraném rozsahu se odstraní:
Jak odstranit každý N-tý řádek v aplikaci Excel
Pro tento úkol rozšíříme techniku filtrování, kterou jsme použili pro odstranění každého druhého řádku. Rozdíl je ve vzorci, na kterém je filtrování založeno:
MOD(ROW()- m , n )Kde:
- m je číslo řádku první buňky s údaji minus 1.
- n je N-tý řádek, který chcete odstranit.
Řekněme, že vaše data začínají na řádku 2 a vy chcete vymazat každý 3. řádek. Takže ve vzorci n se rovná 3 a m se rovná 1 (řádek 2 minus 1):
=MOD(ŘÁDEK() - 1, 3)
Pokud naše data začínají v řádku 3, pak m by se rovnala 2 (řádek 3 minus 1) atd. Tato oprava je nutná pro postupné číslování řádků počínaje číslem 1.
Vzorec dělí relativní řádkové číslo číslem 3 a vrací zbytek po dělení. V našem případě dává pro každý třetí řádek nulu, protože každé třetí číslo se dělí číslem 3 beze zbytku (3,6,9 atd.):
A nyní provedete již známé kroky pro filtrování řádků "0":
- Vyberte libovolnou buňku v tabulce a klikněte na tlačítko Filtr tlačítko na Data
- Filtrujte sloupec Helper tak, aby zobrazoval pouze hodnoty "0".
- Vyberte všechny viditelné řádky "0", klikněte pravým tlačítkem myši a vyberte možnost Odstranit řádek z kontextové nabídky.
- Odstraňte filtr a odstraňte sloupec Helper.
Podobným způsobem můžete v aplikaci Excel odstranit každý čtvrtý, pátý nebo jakýkoli další N-tý řádek.
Tip: Pokud potřebujete odstranit řádky s nerelevantními daty, bude se vám hodit následující návod: Jak odstranit řádky na základě hodnoty buňky.
Děkuji vám za přečtení a doufám, že se s vámi na našem blogu uvidíme i příští týden.