Jak hromadně odstranit řádky v Excelu?

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

Odpovědět
Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3377
Registrován: 24 říj 2008 19:50

Jak hromadně odstranit řádky v Excelu?

Příspěvek od atari »

Potřebuji odstranit řádky, které ve sloupci B neobsahují 999. Udělal jsem to cyklem viz níže. Jelikož se uprostřed cyklu snižuje hodnota řádků, tak po každém smazání snižuji hodnotu i. A aby se to po posledním řádku nezacyklilo, tak neustále hodnotu "I" porovnávám s posledním řádkem a při shodě násilně cyklus uknčim.

Toto řešení mi připadá neprofesionální a při velkém množství řádků pomalé. Existuje elegantnější a rychlejší způsob jak ty řádky smazat?

Kód: Vybrat vše

Sub odstranit_radky()
PosledniRadek = Cells(Rows.Count, "B").End(xlUp).Row 'poslední rádek

For i = 1 To PosledniRadek
    If Cells(i, 2) = 999 Then
    Else
        Rows(i).Delete 'smazeme rádky kde není 999
        i = i - 1 'snižuji hodnotu i
    End If
    PosledniRadek = Cells(Rows.Count, "B").End(xlUp).Row 'znovu načtu poslední řádek
    If i = PosledniRadek Then Exit For 'pokud je "i" na posledním řádku tak ukončím cyklus
Next i
End Sub
Přílohy
test.xlsm
(15.88 KiB) Staženo 68 x
Zivan
Level 5.5
Level 5.5
Příspěvky: 2735
Registrován: 05 led 2010 12:08

Re: Jak hromadně odstranit řádky v Excelu?

Příspěvek od Zivan »

Netusim jestli nejde v Excelu nejak filtrovat radky, ziskat spravne a ty hromadne smazat...ale co projet ty radky od konce? Kdyz jich bude 100, ty zjistis ze 90. radek neobsahuje 999, smazes ho a jdes na radek 89. Nevadi ti, ze se z radku 91 stal radek 90...atd.

Nemusis pak resit jaky je aktualne posledni radek a uvnitr for cyklu meni promennou i, coz si vzdy koleduje o problem.
HP Elitebook 845 G8 (Ryzen 5650U, 32GB RAM, WD SN570 1TB, 14" fullHD IPS) + HP USB-C G5 Essential + 29" LG 29UM65 + 22" Eizo S2202W
Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3377
Registrován: 24 říj 2008 19:50

Re: Jak hromadně odstranit řádky v Excelu?

Příspěvek od atari »

OK díky, tohle funguje, a je to čisté řešení.
Pak ještě zbývá problém, že to je při velkém počtu řádků pomalé. Ale to se dá přežít.
Uživatelský avatar
Grimm
Level 2
Level 2
Příspěvky: 165
Registrován: 30 zář 2017 20:50

Re: Jak hromadně odstranit řádky v Excelu?

Příspěvek od Grimm »

V příloze několik možností. Jednu zmínil již Zivan
Otestuj
Přílohy
test.xlsm
(19.42 KiB) Staženo 91 x
guest

Re: Jak hromadně odstranit řádky v Excelu?

Příspěvek od guest »

a) Řádky se odstraňují odspodu.
b) Jde to udělat hromadně
c) Nasaďte filtr a neřešte kraviny.
Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3377
Registrován: 24 říj 2008 19:50

Re: Jak hromadně odstranit řádky v Excelu?

Příspěvek od atari »

a) to už jsem udělal a funguje
b) "hromadně" - můžete dát nápovědu?
c) filtr nepřichází v úvahu, já ten soubor umistuji na web pro veřejné stažení, takže tam nemůžu nechat něco co nesmí veřejnost vidět
guest

Re: Jak hromadně odstranit řádky v Excelu?

Příspěvek od guest »

b)

Kód: Vybrat vše

Sub Devitky()

    Dim rngRefBunka As Range

    'se sloupcem 2...
    With Columns(2)
        
        'referencni bunka
        Set rngRefBunka = .Find(What:="999", LookAt:=xlWhole)
    
        'odstraneni rozdilnych radku
        'viz dialog Prejit na - jinak
        .ColumnDifferences(rngRefBunka).EntireRow.Delete

    End With

End Sub
c) Myslel jsem nasadit filtr a devítky přenést jinam a to zveřejnit.

Pro úplnost (jiná verze úlohy)
https://proexcel.cz/odstraneni-radku-na ... e-hodnoty/
Odpovědět
  • Podobná témata
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Jak odstranit okna při spouštění - Chrome
    od NIESRA » » v Internet a internetové prohlížeče
    2 Odpovědi
    7924 Zobrazení
    Poslední příspěvek od NIESRA
  • Odstranit nabidka update win11
    od byron » » v Windows 11, 10, 8...
    7 Odpovědi
    5494 Zobrazení
    Poslední příspěvek od byron
  • Jak odstranit zaškrtávací ikonu (prázdný čtverec) ve WORDU?
    od Zabral688 » » v Kancelářské balíky
    9 Odpovědi
    6734 Zobrazení
    Poslední příspěvek od mmmartin
  • Jak odstranit bílý pruh nad maximalizovaným oknem programu?
    od Minapark » » v Windows 11, 10, 8...
    0 Odpovědi
    7746 Zobrazení
    Poslední příspěvek od Minapark

Zpět na „Kancelářské balíky“