Note: The other languages of the website are Google-translated. Back to English

Jak filtrovat seznam a odstranit zbývající skryté nebo viditelné řádky v aplikaci Excel?

U filtrovaného seznamu možná budete muset odstranit skryté nebo viditelné řádky, aby se zachovala pouze užitečná data. V tomto článku vám ukážeme způsoby odstranění zbývajících skrytých nebo viditelných řádků filtrovaného seznamu v aplikaci Excel.

Odstraňte skryté řádky v aktivním listu pomocí kódu VBA
Odstraňte viditelné řádky filtrovaného seznamu výběrem všech viditelných buněk
Snadno odstraňte skryté nebo viditelné řádky filtrovaného seznamu pomocí programu Kutools pro Excel


Odstraňte skryté řádky v aktivním listu pomocí kódu VBA

Tato část vám ukáže kód VBA k odstranění skrytých řádků na aktivním listu. Postupujte prosím následovně.

1. Aktivujte list, který potřebujete k odstranění skrytých řádků, stiskněte Další + F11 současně otevřete Microsoft Visual Basic pro aplikace okno.

2. V okně Microsoft Visual Basic pro aplikace klepněte na Vložit > Modul. A pak zkopírujte a vložte níže uvedený kód VBA do okna modulu.

Kód VBA: Odstraňte skryté řádky

Sub RemoveHiddenRows()
	Dim xRow As Range
	Dim xRg As Range
	Dim xRows As Range
	On Error Resume Next
	Set xRows = Intersect(ActiveSheet.Range("A:A").EntireRow, ActiveSheet.UsedRange)
	If xRows Is Nothing Then Exit Sub
		For Each xRow In xRows.Columns(1).Cells
			If xRow.EntireRow.Hidden Then
				If xRg Is Nothing Then
					Set xRg = xRow
				Else
					Set xRg = Union(xRg, xRow)
				End If
			End If
		Next
		If Not xRg Is Nothing Then
			MsgBox xRg.Count & " hidden rows have been deleted", , "Kutools for Excel"
			xRg.EntireRow.Delete
		Else
			MsgBox "No hidden rows found", , "Kutools for Excel"
		End If
	End Sub

3. zmáčkni F5 klíč ke spuštění kódu. Pokud jsou na aktivním listu skryté řádky, po spuštění kódu se zobrazí dialogové okno s informacemi o tom, kolik skrytých řádků bylo odstraněno. Klikněte na ikonu OK tlačítko pro odstranění skrytých řádků. Viz screenshot:

dokument odstranit zbytek 1

V opačném případě se po spuštění kódu zobrazí následující dialogové okno.

dokument odstranit zbytek 1

Poznámka: výše uvedený kód VBA může nejen odstranit skryté řádky filtrovaného seznamu, ale také odstranit skryté řádky, které jste dříve ručně skryli.


Odstraňte viditelné řádky filtrovaného seznamu výběrem funkce všech viditelných buněk

Chcete-li odstranit viditelné řádky filtrovaného seznamu, postupujte takto.

1. Vyberte všechny odfiltrované řádky a stiskněte F5 klávesa pro otevření Přejít na V dialogovém okně klepněte na ikonu Speciální knoflík. Viz screenshot:

dokument odstranit zbytek 1

2. V Přejít na speciální V dialogovém okně zaškrtněte Pouze viditelné buňky možnost a poté klikněte na OK .

dokument odstranit zbytek 1

3. Nyní jsou vybrány všechny viditelné řádky, klikněte pravým tlačítkem na výběr a poté klikněte na Odstranit řádky.

dokument odstranit zbytek 1

Až do teď jsou všechny viditelné řádky odstraněny z filtrovaného seznamu.


Snadno odstraňte skryté nebo viditelné řádky filtrovaného seznamu pomocí programu Kutools pro Excel

Výše uvedené dvě metody nemusí být řešením přání pro mnoho uživatelů aplikace Excel, zde vám představujeme užitečný nástroj. S Odstranit skryté (viditelné) řádky a sloupce užitečnost Kutools pro Excel, můžete snadno odstranit skryté řádky ve vybraném rozsahu / listech, aktivním listu nebo všech listech v aplikaci Excel.

Před aplikací Kutools pro Excel, Prosím nejprve si jej stáhněte a nainstalujte.

1. Pokud chcete odstranit pouze skryté nebo viditelné řádky filtrovaného seznamu, vyberte ručně filtrovaný rozsah a klikněte na Kutools > Vymazat > Odstranit skryté (viditelné) řádky a sloupce. Viz snímek obrazovky:

2. V Odstranit skryté (viditelné) řádky a sloupce dialogové okno ponechejte Ve zvoleném rozsahu vybrané v Podívejte se do rozevírací seznam (můžete vybrat další možnosti podle potřeby), zkontrolujte Řádky možnost v Smazat typ sekci a v Podrobný typ část, zkontrolujte Viditelné řádky or Skryté řádky možnost, jak potřebujete. A nakonec klikněte na OK .

3. Poté se zobrazí dialogové okno s informacemi o tom, kolik řádků bylo smazáno. Klikněte prosím na OK .

  Pokud chcete mít bezplatnou zkušební verzi (30-den) této utility, kliknutím jej stáhněte, a poté přejděte k použití operace podle výše uvedených kroků.


Odstraňte skryté nebo viditelné řádky filtrovaného seznamu pomocí programu Kutools pro Excel


Nejlepší kancelářské nástroje produktivity

Kutools pro Excel řeší většinu vašich problémů a zvyšuje vaši produktivitu o 80%

  • Opakované použití: Rychle vložte složité vzorce, grafy a cokoli, co jste dříve používali; Šifrovat buňky s heslem; Vytvořte seznam adresátů a posílat e-maily ...
  • Super Formula Bar (snadno upravit více řádků textu a vzorce); Rozložení pro čtení (snadno číst a upravovat velké množství buněk); Vložit do filtrovaného rozsahu...
  • Sloučit buňky / řádky / sloupce bez ztráty dat; Rozdělit obsah buněk; Zkombinujte duplicitní řádky / sloupce... Zabraňte duplicitním buňkám; Porovnat rozsahy...
  • Vyberte možnost Duplikovat nebo Jedinečný Řádky; Vyberte prázdné řádky (všechny buňky jsou prázdné); Super hledání a fuzzy hledání v mnoha sešitech; Náhodný výběr ...
  • Přesná kopie Více buněk beze změny odkazu na vzorec; Automaticky vytvářet reference do více listů; Vložte odrážky, Zaškrtávací políčka a další ...
  • Extrahujte text, Přidat text, Odebrat podle pozice, Odebrat mezeru; Vytváření a tisk mezisoučtů stránkování; Převod mezi obsahem buněk a komentáři...
  • Super filtr (uložit a použít schémata filtrů na jiné listy); Rozšířené řazení podle měsíce / týdne / dne, frekvence a dalších; Speciální filtr tučnou kurzívou ...
  • Kombinujte sešity a pracovní listy; Sloučit tabulky na základě klíčových sloupců; Rozdělte data do více listů; Dávkový převod xls, xlsx a PDF...
  • Více než 300 výkonných funkcí. Podporuje Office / Excel 2007-2021 a 365. Podporuje všechny jazyky. Snadné nasazení ve vašem podniku nebo organizaci. Plné funkce 30denní bezplatná zkušební verze. 60denní záruka vrácení peněz.
karta kte 201905

Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci

  • Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
  • Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
  • Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!
officetab dno
Komentáře (7)
Zatím žádné hodnocení. Buďte první, kdo ohodnotí!
Tento komentář byl moderátorem webu minimalizován
Zpětná vazba k makru pro skryté mazání řádků – trvá příliš dlouho, než se spustí na 900 2 řádcích, než aby to bylo užitečné. 1950+ hodiny na OC'd Threadripper XNUMXX a stále běží (muselo ukončit úlohu). Nějaký způsob, jak to optimalizovat pro použití více jader, nebo je to omezení VBA?
Tento komentář byl moderátorem webu minimalizován
Dobrý den,
Kód byl optimalizován. Zkuste to prosím. Děkuji za váš komentář.

Sub RemoveHiddenRows()
Dim xFlag As Boolean
Dim xStr, xTemp As String
Dim xDiv, xMod As Long
Dim I, xCount, xRows As Long
Dim xRg, xCell, xDRg jako rozsah
Dim xArr() jako řetězec
On Error Resume Next
Application.ScreenUpdating = False
Application.EnableEvents = False
Nastavit xRg = Intersect(ActiveSheet.Range("A:A").EntireRow, ActiveSheet.UsedRange)
Pokud xRg není nic, pak Exit Sub
xRows = xRg.Rows.Count
Nastavit xRg = xRg(1)
xFlag = Pravda
xTemp = ""
xCount = 0
Pro I = 1 až xRows
Nastavit xCell = xRg.Offset(I - 1, 0)
Do While xFlag
Pokud xCell.EntireRow.Hidden Then
xStr = xCell.Address
xFlag = False
Jiný
Přejít na Ctn
End If
Smyčka
Pokud xCell.EntireRow.Hidden Then
xTemp = xStr & "," & xCell.Address
End If
Pokud Len(xTemp) > 171 Pak
xCount = xCount + 1
ReDim Preserve xArr (1 až xCount)
xArr(xCount) = xStr
xStr = xCell.Address
Jiný
xStr = xTemp
End If
Ctn:
další
xCount = xCount + 1
ReDim Preserve xArr (1 až xCount)
xArr(xCount) = xStr
Pro I = xCount To 1 Krok -1
Pokud I = 1 Pak
xStr = Mid(xArr(I), InStr(xArr(I), ",") + 1, Len(xArr(I)) - InStr(xArr(I), ","))
Jiný
xStr = xArr(I)
End If
Pokud xDRg není nic, pak
Nastavit xDRg = Range(xStr)
Jiný
Nastavit xDRg = Union(xDRg, Range(xStr))
End If
If (Len(xDRg.Address) >= 244) Nebo (xCount = 1) Pak
xDRg.EntireRow.Delete
Nastavit xDRg = nic
End If
další
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
Tento komentář byl moderátorem webu minimalizován
Skvělé, děkuji! Při příští příležitosti/potřebě to zkontroluji a odpovím.
Tento komentář byl moderátorem webu minimalizován
Kód VBA pro odstranění skrytých řádků fungoval perfektně bez škubání. DĚKUJI!!
Tento komentář byl moderátorem webu minimalizován
Děkuji za informaci. To bylo poučné. Existuje prosím způsob, jak filtrovat a mazat konkrétní čísla v řádcích do 1 milionu? Lze výše uvedený kód upravit, aby tak učinil?
Tento komentář byl moderátorem webu minimalizován
Dobrý den,
Je nám líto, netestovali jsme kód v tak velkých řádkových datech. Možná si můžete vytvořit kopii svých dat a vyzkoušet, zda kód může fungovat.
Tento komentář byl moderátorem webu minimalizován
Ahoj, tento kód VBA je úžasně užitečný.
Zatím zde nejsou žádné komentáře
Zanechat své připomínky
Odesílání jako host
×
Ohodnoťte tento příspěvek:
0   Postavy
Doporučená umístění

Sociální sítě

Copyright © 2009 - www.extendoffice.com. | Všechna práva vyhrazena. Poháněno ExtendOffice. | |. | Sitemap
Microsoft a logo Office jsou ochranné známky nebo registrované ochranné známky společnosti Microsoft Corporation ve Spojených státech a / nebo jiných zemích.
Chráněno Sectigo SSL