Přejít k hlavnímu obsahu

Odstraňte řádky na základě hodnoty buňky v Excelu – snadný výukový program

Ať už máte co do činění s malou tabulkou nebo velkou datovou sadou, znalost, jak odstranit řádky na základě hodnot buněk, vám může ušetřit čas a úsilí. Tento proces lze provést pomocí několika funkcí aplikace Excel, včetně funkce Filtr, nástroje Najít a nahradit, funkce řazení a dokonce i pomocí pokročilých technik. Na konci této příručky budete vybaveni znalostmi pro účinné odstranění nežádoucích řádků z listů aplikace Excel a zajistíte, že vaše data budou čistá a relevantní pro vaše potřeby analýzy.

Pokud chci například odstranit všechny řádky, kde sloupec názvu obsahuje Jener, jak bych postupoval?

Odeberte celé řádky na základě hodnoty buňky

Odstraňte řádky ve výběru na základě hodnoty buňky pomocí funkce Seřadit


Odeberte celé řádky na základě hodnoty buňky v aplikaci Excel

Excel nabízí několik způsobů, jak odstranit řádky na základě konkrétních hodnot buněk. Tato část pokrývá metody od jednoduchých funkcí aplikace Excel, jako je filtrování, hledání a nahrazování a Kutools, až po pokročilejší techniky zahrnující VBA. Ať už jste začátečník nebo pokročilý uživatel, najdete metodu, která vyhovuje vaší úrovni dovedností a potřebám.

???? Poznámka: Následující metody odstranění řádků odstraní všechna data v daném řádku, včetně obsahu v ostatních buňkách řádku. Chcete-li zabránit ztrátě dat, zvažte před odstraněním duplikaci datové sady na jiný list.

Odstraňte celé řádky na základě hodnoty buňky pomocí funkce Filtr

Normálně můžete použít funkci Filtr k zobrazení řádků, které splňují určitá kritéria, a poté řádek najednou odstranit.

Krok 1:Použijte funkci Filtr k filtrování nežádoucích řádků

  1. Vyberte rozsah dat, ze kterého chcete odstranit řádky. A pak klikněte Data > Filtr, viz screenshot:
  2. Nyní se v záhlaví každého sloupce objeví rozbalovací šipky. Klikněte na rozevírací šipku ve sloupci obsahujícím hodnoty, na základě kterých chcete odstranit řádky. Pokud například chcete odstranit řádky se jménem Jener, klikněte na šipku ve sloupci Název.
  3. V rozbalovací nabídce zrušte zaškrtnutí Vybrat vše zrušte všechny výběry a zaškrtněte pouze políčko vedle Jener nebo ručně zadejte Jener do vyhledávacího pole, abyste jej rychle našli.
  4. A pak klikněte OK tlačítko pro použití filtru. Zobrazí se pouze řádky, které obsahují Jener. Viz snímek obrazovky:

Krok 2: Odstraňte filtrované řádky

Vyberte viditelné řádky, poté klikněte pravým tlačítkem na jeden z vybraných řádků a vyberte Odstranit řádek z kontextové nabídky. Tím se odstraní všechny vybrané řádky.

Krok 3: Vyčistěte filtr

Poté klikněte na tlačítko Data > Filtr znovu. Tím se filtr odstraní a uvidíte všechny záznamy kromě smazaných.

???? Tipy:
  • Podobně jako aplikuji metodu filtru k odstranění řádků obsahujících text Jener, můžete ji také použít k odstranění řádků na základě číselných nebo datových podmínek, jak je znázorněno na následujících snímcích:
    Podmínky filtrování čísel:


    Podmínky filtrování data:
  • Můžete také použít funkci Filtr k filtrování a odstranění všech řádků, které obsahují určitou barvu pozadí. Viz snímek obrazovky:
  • Pomocí funkce filtru můžete filtrovat na základě více kritérií, abyste odfiltrovali obsah, který nepotřebujete, a poté jej smažte. Předpokládejme například, že chcete odstranit všechny řádky, kde je prodejce Jener a celkové tržby jsou vyšší než 7000 7000 USD. Nejprve byste měli filtrovat řádky podle jména Jener a poté filtrovat prodeje, které jsou větší než XNUMX.
 

Odstraňte celé řádky na základě hodnoty buňky pomocí Kutools AI Aide

Kutools pro Excel je komplexní doplněk, který obsahuje více než 300 pokročilých funkcí určených ke zjednodušení různých druhů složitých úkolů v Excelu. Jednou z jeho vlastností, Kutools AI asistent, pomáhá automatizovat úlohy, jako je filtrování a mazání řádků na základě specifických kritérií.

???? Poznámka: Chcete-li použít toto Kutools AI asistent of Kutools pro Excel, Prosím stáhnout a nainstalovat Kutools pro Excel jako první.

Po instalaci Kutools pro Excel, Prosím klikněte Kutools AI > AI asistent k otevření Kutools AI asistent podokno:

  1. Vyberte rozsah dat, zadejte svůj požadavek do pole chatu a klikněte Poslat nebo stiskněte tlačítko vstoupit klíč k odeslání otázky;
    „Odstraňte řádky, pokud sloupec Název obsahuje ve výběru jméno Jener“
  2. Po analýze klikněte Provést tlačítko spustit. Kutools AI Aide zpracuje váš požadavek pomocí AI a odstraní zadané řádky přímo v Excelu.
???? Tipy:
  • Chcete-li odstranit řádky na základě více kritérií, jednoduše odpovídajícím způsobem upravte požadavky. Použijte například příkazy jako "Odeberte řádky, kde sloupec Název obsahuje Jener nebo Kevin ve výběru"Nebo"Odeberte řádky, kde sloupec Název obsahuje Jener a celkový prodej přesahuje 7000 ve výběru".
  • Tato metoda nepodporuje vrácení zpět funkce. Pokud si však přejete obnovit původní data, můžete kliknout Nespokojený vrátit změny.
 

Odstraňte celé řádky na základě hodnoty buňky pomocí funkce Najít a nahradit

Odebrání celých řádků na základě konkrétní hodnoty buňky pomocí funkce Najít a nahradit aplikace Excel je přímočará metoda, která může být vysoce efektivní pro čištění dat. Postupujte prosím následovně:

Krok 1: Pomocí funkce Najít a nahradit vyberte konkrétní hodnotu

  1. Vyberte data sloupce, ze kterých odeberete řádky na základě určité hodnoty buňky, a poté otevřete soubor Najít a nahradit dialogové okno stisknutím tlačítka Ctrl + F současně.
  2. v Najít a nahradit dialogovém okně zadejte určitou hodnotu buňky (v našem případě zadáme jener) do Najít to, co a klepněte na tlačítko Najít vše knoflík. Viz screenshot:
  3. Vyberte všechny výsledky vyhledávání v dolní části Najít a nahradit dialogové okno a zavřete toto dialogové okno. (Můžete vybrat jeden z výsledků hledání a poté Ctrl + vyberte všechny nalezené výsledky.) A vyberou se všechny buňky obsahující určitou hodnotu. Potom toto dialogové okno zavřete. Viz snímek obrazovky:

Krok 2: Odstraňte řádky na základě vybrané hodnoty

  1. Se stále vybranými buňkami klikněte pravým tlačítkem na jednu z vybraných buněk a vyberte Vymazat z kontextové nabídky.
  2. vybrat Celá řada v dialogovém okně Odstranit a klepněte na OK k odstranění všech řádků obsahujících zadanou hodnotu.
 

Odstraňte celé řádky na základě hodnoty buňky pomocí kódu VBA

Odebrání řádků na základě hodnoty buňky pomocí jazyka VBA (Visual Basic for Applications) v Excelu umožňuje automatizaci úlohy, takže je efektivní, zejména u velkých datových sad.

Krok 1: Otevřete editor modulu VBA a zkopírujte kód

  1. Stisknout Alt + F11 klávesy pro otevření Microsoft Visual Basic pro aplikace okno.
  2. V otevřeném okně klikněte na Vložit > Modul k vytvoření nového prázdného modulu.
  3. Poté zkopírujte a vložte níže uvedený kód do prázdného modulu.
    Sub DeleteRowsBasedOnCellValue()
    'Updateby Extendoffice
        Dim ws As Worksheet
        Set ws = ActiveSheet
        Dim columnRange As Range
        On Error Resume Next
        Set columnRange = Application.InputBox("Select the column range to check:", "Kutools for Excel", Type:=8)
        On Error GoTo 0
        If columnRange Is Nothing Then Exit Sub
        Dim lastRow As Long
        lastRow = ws.Cells(ws.Rows.Count, columnRange.Column).End(xlUp).Row
        Dim criteria As String
        criteria = Application.InputBox("Enter the value to delete rows for:", "Kutools for Excel", Type:=2)
        If criteria = "" Then Exit Sub
        Dim i As Long
        For i = lastRow To 1 Step -1
            If ws.Cells(i, columnRange.Column).Value = criteria Then
                ws.Rows(i).Delete
            End If
        Next i
    End Sub
    

Krok 2: Spusťte kód

  1. Pak stiskněte tlačítko F5 klíč ke spuštění kódu. Ve vyskakovacím dialogovém okně vyberte sloupec, ze kterého chcete odstranit řádky na základě určité hodnoty, a klikněte na OK .
  2. V následujícím dialogovém okně zadejte určitou hodnotu, na základě které odstraníte řádky, a klikněte na OK knoflík. Viz screenshot:

Výsledek:

A pak uvidíte, že celé řádky již byly odstraněny na základě zadané hodnoty.

???? Poznámka: Tato metoda kódu VBA nepodporuje Undo, proto se před použitím ujistěte, že operace probíhá podle očekávání. Kromě toho je vhodné udržovat zálohu vašich dat, abyste je ochránili před neúmyslnými změnami nebo ztrátou.

Odstraňte řádky ve výběru na základě hodnoty buňky pomocí funkce Seřadit

Všechny výše uvedené metody odstraní celý řádek, což může být omezení. Použití těchto metod by například odstranilo všechna data napravo od datové sady. Předpokládejme, že chcete odstranit pouze určité záznamy v datové sadě a zachovat zbytek dat. V takovém případě je zapotřebí alternativní přístup.

Krok 1: Vytvořte pomocný sloupec pro data

Vytvořte nový sloupec, který nám pomůže sledovat objednávku. Musíte vložit sloupec vedle vašich dat a poté jej vyplnit sériovým číslem, jako je 1, 2, 3… viz snímek obrazovky:

Krok 2: Seřaďte data na základě konkrétního sloupce

  1. Vyberte sloupec dat, na jehož základě chcete odstranit řádky. Poté klikněte Data > Třídit od A do Z. or Z do Aa otevře se dialogové okno Upozornění na řazení, vyberte Rozbalte výběra potom klikněte na Typ knoflík. Viz screenshot:
  2. Nyní budou řádky se stejnými hodnotami seskupeny, což usnadní jejich identifikaci a výběr. Viz snímek obrazovky:

Krok 3: Odstraňte seřazené řádky

  1. Vyberte skupinu záznamů, kterou chcete odstranit, klepněte pravým tlačítkem myši a vyberte Vymazat z kontextové nabídky. V Vymazat dialogové okno vyberte Posuňte buňky nahoru volba. A pak klikněte OK Knoflík. Viz screenshot:
  2. Jsou odstraněny pouze záznamy, kde je název Jener, aniž by byl odstraněn celý řádek. Jakákoli data napravo nebo nalevo od vaší datové sady tak zůstanou nedotčena.

Krok 4: Použijte funkci Sort k obnovení původního pořadí dat

Klikněte na záhlaví sloupce nápovědy a přejděte na Data na pásu karet a vyberte Třídit od A do Z. uspořádat data podle pořadí v pomocném sloupci. Tím se data ve zvoleném rozsahu podle potřeby obnoví do původního pořadí.

Krok 5: Odstraňte pomocný sloupec

Nakonec odstraňte pomocný sloupec podle potřeby, abyste mohli vyčistit list.


V tomto článku jsme prozkoumali několik metod odstranění řádků v Excelu na základě hodnot buněk. Můžete si vybrat ten, který se vám líbí. Pokud máte zájem prozkoumat další tipy a triky pro Excel, naše webové stránky nabízejí tisíce výukových programů pro přístup k nim klikněte sem. Děkujeme za přečtení a těšíme se, že vám v budoucnu poskytneme další užitečné informace!


Související články:

  • Snadné odstranění prázdných buněk v Excelu – kompletní návod
  • Odstranění prázdných buněk v Excelu je běžný úkol, který může pomoci zefektivnit vaše data a usnadnit analýzu, pochopení a prezentaci. Prázdné buňky mohou narušit analýzu dat, způsobit chyby ve vzorcích a způsobit, že vaše datové sady budou vypadat neúplně nebo neprofesionálně. V tomto tutoriálu prozkoumáme několik metod, jak efektivně odstranit nebo spravovat prázdné buňky v Excelu, jako je funkce Přejít na speciální, vzorce, funkce Filtr. Každá metoda slouží jiným potřebám a scénářům, takže si můžete vybrat tu, která nejlépe vyhovuje vašim požadavkům.
  • Odstraňte řádky na základě barvy pozadí
  • Jak můžete smazat celé řádky podle barvy pozadí? V tomto příkladu musím odstranit všechny řádky, které buňky vyplnily modrou barvou pozadí, jak ukazuje následující snímek obrazovky. V tomto článku získáte několik kódů k dosažení tohoto úkolu v aplikaci Excel.
  • Smažte každý druhý řádek
  • Pokud chcete rychle smazat všechny ostatní řádky nebo sloupce v aplikaci Excel, hlavním bodem je, jak můžete nejprve rychle vybrat každý druhý řádek nebo sloupec a poté na ně použít operaci odstranění. A tento článek vám ukáže některé složité věci o tom, jak nejprve vybrat každý druhý řádek nebo sloupec a poté je rychle odstranit.
Comments (39)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
In given range, if any cell contains defined text the entire row gets deleted.

Pls share code
This comment was minimized by the moderator on the site
Hi Yogesh,
On this webpage, the second method is to delete rows by cell values with VBA code. You can go to there and copy the code directly!
https://www.extendoffice.com/documents/excel/815-excel-remove-rows-based-on-cell-value.html#vba
This comment was minimized by the moderator on the site
There are two issues with the code posted as of this date. 1) the variable xTitleId is not declared, which causes a compilation error if Option Explicit is in use. 2) With Excel 2016, it appears that a range is limited to 129 areas. Each discontiguous matching cell found in the loop creates another area in the DeleteRng variable. Unfortunately, the Union method does not raise an error if that number of areas is exceeded; it just ignores the remaining cells. When the loop is finished, DeleteRng will have no more than 129 areas.
This comment was minimized by the moderator on the site
Hi TomTheToolman,
Thank you so much for your feedback. I've already updated the new code in the article. If you have any other questions, please don't hesitate to let me know.
Amanda
This comment was minimized by the moderator on the site
very well. Thank you!
This comment was minimized by the moderator on the site
Can someone help me...If 3rd column has value 0, then delete all values of corresponding column 1st. In this case answer should be the last line only.... Check MenuName ID 3149 VNLA MILFLLE 2 3149 TURKEY PNN 0 3149 R. BEEF PNN 0 3149 MIX MOCHA 38 3150 M.G.R 1/2 0 3150 THE PEPPE L 0 3150 MIX SLD 0 3150 EGGPLANT 0 3150 STILL WATER 7 3151 MIX MOCHA 38
This comment was minimized by the moderator on the site
Thanks for sharing. I am actually looking for a code that doesn't ask user for range but instead selects a specific column say column "A" and runs till the last row of that column. Can you please help..
This comment was minimized by the moderator on the site
Hi everybody, I am wondering what can we do to delete the following (According to the example shown in this page): Soe appears at several date (sept, October... etc). What I would like is to delete the line where Soe is but to keep the line with last date she appeared. In addition, some lines could be in double but I still want to keep it. So for example, you have the lines: - July 3 /Soe - Sep 4 / Soe - Sep 4 / Soe - Oct 19/ Soe - Nov 13 / Soe - Nov 13 / Soe and what I want to keep is: - Nov 13 / Soe - Nov 13 / Soe My real case is: I have different EAN code and version 1, 2, 3 or 4 and I want to keep the line where the version is the higher. e.g.: I have: - EAN 1 / Version 1 - EAN 1 / Version 1 - EAN 1 / Version 2 - EAN 1 / Version 2 - EAN 2 / Version 2 - EAN 2 / Version 3 - EAN 2 / Version 3 and I want to keep: - EAN 1 / Version 2 - EAN 1 / Version 2 - EAN 2 / Version 3 - EAN 2 / Version 3 I am searching since hours and I am completely blocked on this issue. Many thanks in advance for your brain and help. Best, Marion
This comment was minimized by the moderator on the site
Hi, Thank you this was really helpful. However, there's an error that pops up when I run the codes it says "Object variable or with block variable not set" and it points to " the line DeleteRNG.EntireRow.Delete". Could you please help me with debugging this. Thanks.
This comment was minimized by the moderator on the site
I am trying to use this macro in order to delete unused formulas, because excel views blank formula cells as a zero value and will print extra pages. I was hoping when I deleted the unused formulas, when I printed it would only print the pages that had information. This is not the case and I really need help to find a solution. I have tried using this formula and it is not working and prints three extra pages that I do not need even with the extra formulas being deleted. Sub selectonly() ' ' selectonly Macro ' Range("A1").Select Range(Selection, Selection.End(xlToRight)).Select Range(Selection, Selection.End(xlDown)).Select ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)" End Sub
This comment was minimized by the moderator on the site
thank you so much. That save me a lot of time
This comment was minimized by the moderator on the site
Trying to find a delete Function that will delete entire designated rows automatically, based on certain values or certain text contained in other cell(s), using only automated formulas.
This comment was minimized by the moderator on the site
How can i delete selected cell that i want based on value that i entered for example : A1 B1 C1 D1 A2 B2 C2 D2 A3 B3 C3 D3 A4 B4 C4 D4 When i entered in some cell for example "2" then 2 row will be deleted from A3:D4. If i entered "1" then 1 row will be deleted from A4:D4. if i entered "3" then 3 row will be deleted from A2:D4
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations