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

Jak procházet řádky, dokud nejsou prázdné ve sloupci aplikace Excel?

Zde je dlouhý sloupec s údaji, který obsahuje některé prázdné buňky, a chcete procházet řádky, dokud nenarazíte na prázdnou buňku. V aplikaci Excel neexistuje žádná vestavěná funkce, která by tuto práci zvládla, ale mohu vám představit některá makra, která vám udělají laskavost.

Procházejte řádky, dokud nejsou prázdné, pomocí VBA


šipka modrá pravá bublina Procházejte řádky, dokud nejsou prázdné, pomocí VBA

1. lis Alt + F11 klávesy pro povolení Microsoft Visual Basic pro aplikace okno.

2. cvaknutí Vložit > Modula vložte níže uvedený kód do prázdného skriptu.

VBA: Smyčka do prázdna

Sub Test1()
'UpdatebyExtendoffice20161222
      Dim x As Integer
      Application.ScreenUpdating = False
      ' Set numrows = number of rows of data.
      NumRows = Range("A1", Range("A1").End(xlDown)).Rows.Count
      ' Select cell a1.
      Range("A1").Select
      ' Establish "For" loop to loop "numrows" number of times.
      For x = 1 To NumRows
         ' Insert your code here.
         ' Selects cell down 1 row from active cell.
         ActiveCell.Offset(1, 0).Select
      Next
      Application.ScreenUpdating = True
End Sub

smyčka doc do prázdné 1

V kódu je A1 první buňka, ze které chcete vytvořit smyčku, a můžete ji podle potřeby změnit.

3. lis F5 klávesu pro zahájení smyčkování sloupce, pak se kurzor zastaví na první splněné prázdné buňce.
smyčka doc do prázdné 2

Poznámka: Chcete-li procházet daty, dokud se nesetkáte s prázdnými buňkami, můžete použít tento kód makra.

Sub LoopThroughUntilBlanks()
'UpdatebyExtendoffice20161222
      ' Select cell A2, *first line of data*.
      Dim xrg As Range
      On Error Resume Next
      Set xrg = Application.InputBox _
        (Prompt:="first cell select..", Title:="Kutools for Excel", Type:=8)
      xrg.Cells(1, 1).Select
      ' Set Do loop to stop when two consecutive empty cells are reached.
      Application.ScreenUpdating = False
      Do Until IsEmpty(ActiveCell) And IsEmpty(ActiveCell.Offset(1, 0))
         ' Insert your code here.
         '
         ' Step down 2 rows from present location.
         ActiveCell.Offset(2, 0).Select
      Loop
      Application.ScreenUpdating = False
End Sub

Poté musíte v buňce vybrat první buňku, ze které chcete vytvořit smyčku Kutools pro Excel dialog, klepněte na tlačítko OK, pak se kurzor zastaví v prvních souvislých prázdných buňkách.

smyčka doc do prázdné 3 smyčka doc do prázdné 4

Snadno kombinujte více listů / sešit do jednoho listu nebo sešitu

Kombinovat vícenásobné listy nebo sešity do jednoho listu nebo sešitu může být v aplikaci Excel náročné, ale s Kombinovat funkce v Kutools pro Excel, můžete kombinovat desítky listů / sešitů do jednoho listu nebo sešitu, také můžete sloučit listy do jednoho pouze několika kliknutími.  Kliknutím zobrazíte všechny funkce 30 zkušební dny zdarma!
kombinovat listy
 
Kutools pro Excel: s více než 300 praktickými doplňky Excelu, které lze zdarma vyzkoušet bez omezení 30 dnů.

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
Jeho opakování sloupec ne řádek
Tento komentář byl moderátorem webu minimalizován
Abyste mohli procházet sloupcem, musíte jít podle čísla řádku.
Tento komentář byl moderátorem webu minimalizován
Můžete prosím vysvětlit, co je podmínkou pro zastavení smyčky? Co vás nutí vymanit se ze smyčky v Test1()?
Tento komentář byl moderátorem webu minimalizován
Zastaví se při splnění první mezery ve sloupci
Tento komentář byl moderátorem webu minimalizován
Řekněme, že mám spoustu řádků...nějaké triky, jak to zrychlit?
Tento komentář byl moderátorem webu minimalizován
Smyčka mi funguje kromě toho, že prochází každým řádkem bez ohledu na to, zda je prázdný nebo ne.
Tento komentář byl moderátorem webu minimalizován
První VBA vytváří nesprávný výsledek v případech, kdy existuje jeden nebo nula řádků dat.

Něco takového asi potřebuješ

If Range("A1").Value = "" Then
NumRows = 0
ElseIf Rozsah("A1").Offset(1, 0).Value = "" Potom
NumRows = 1
Jiný
NumRows = Range("A1", Range("A1")).End(xlDown)).Rows.Count
End If
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