Úvod do VBA Exit Sub

Exit Sub vypadá jako ukončení podkategorie jejím jménem. Ve skutečnosti se však Exit Sub používá k úplnému vyskočení z procedury sub, aniž by nechal dokončit kompletní kód. Když použijeme Exit Sub mezi libovolný kód, pak pouze kód před Exit sub dostane úplně spuštěn v VBA Excel. Kód po subitu Exit bude přeskočen a po něm přeskočí celý kód. Exit Sub obvykle pracuje s Do-while Loop lépe.

Jak použít Exit Sub pomocí VBA?

Podívejme se na příklady Exit Sub v Excelu VBA.

Tuto šablonu VBA Exit Sub Excel si můžete stáhnout zde - VBA Exit Sub Excel Template

Příklad č. 1 - VBA Exit Sub

Krok 1: Pro použití Exit Sub potřebujeme modul. Za tímto účelem přejděte do okna VBA. Klikněte na záložku Vložit menu, dostaneme seznam, odtud vyberte Modul, jak je ukázáno níže.

Krok 2: Poté nově otevřený modul zapište podkategorii do názvu VBA Exit Sub nebo do jakéhokoli jiného názvu, jak je uvedeno níže.

Kód:

 Sub VBA_ExitSub1 () End Sub 

Krok 3: Definujte proměnnou Dim s libovolným názvem, řekněme A. A přiřaďte jí funkci Integer, jak je ukázáno níže.

Kód:

 Sub VBA_ExitSub1 () Dim A jako celé číslo End Sub 

Krok 4: Nyní otevřete smyčku Do while, jak je ukázáno níže.

Kód:

 Sub VBA_ExitSub1 () Dim A jako celé číslo do konce Sub 

Krok 5: Mezi tím, když píšeme jednoduchý porovnávací kód. Udělejme přidání proměnné A s +1. Což znamená přidání sčítání pro A s vlastní hodnotou +1. A spusťte ji, dokud nedostaneme hodnotu +1 pro proměnnou A.

Kód:

 Sub VBA_ExitSub1 () Dim A jako celé číslo Do A = A + 1, zatímco End Sub 

Krok 6: Nyní bude v podmínce Loop while definováno, kolik chceme přidat +1 do A. Což říká, že DO smyčka bude spuštěna po stavu A + 1, zatímco A je menší než 100.

Kód:

 Sub VBA_ExitSub1 () Dim A jako Integer Do A = A + 1 Loop, zatímco A <100 End Sub 

Krok 7: Nyní budeme potřebovat okno se zprávou (což je volitelné), abychom viděli výstup smyčky Do while. Za tím vložte MsgBox a dejte jej do proměnné A.

Kód:

 Sub VBA_ExitSub1 () Dim A jako Integer Do A = A + 1 Loop, zatímco A <100 MsgBox A End Sub 

Krok 8: Nyní zkompilujte kód stisknutím klávesy F8, abyste zjistili, zda v kódu není nějaká chyba. Později spusťte celý kód stisknutím tlačítka Přehrát umístěného pod nabídkovou lištou, jak je uvedeno níže. Uvidíme, že okno zprávy nám dalo výstup jako 100 . Což znamená, že hodnota A je menší než 100 a vzorec, který jsme definovali v DO Loopu, říká, že hodnota A je A + 1. Odpověď je tedy 100.

Krok 9: Nyní, abychom použili Exit Sub ve provedené smyčce Do while, musíme přidat příkaz Exit Sub před startem Loop nebo po definování proměnné A, jak je ukázáno níže.

Kód:

 Sub VBA_ExitSub1 () Dim A jako Celočíselný Exit Sub Do A = A + 1 smyčka, zatímco A <100 MsgBox A End Sub 

Nyní znovu zkompilujte kód a spusťte, pokud nebyla nalezena žádná chyba.

Zjistíme, že jsme nenašli žádný výstup. Což je způsobeno tím, že běh kódu je dokončen, ale přeskočen na smyčku Do while, což v okně zprávy nedává žádný výstup.

Příklad č. 2 - VBA Exit Sub

Podívejme se na další příklad. V tomto příkladu uvidíme, jak Exit Sub pracuje na přeskočení změny barvy písma. Protože v buňce C3 máme nějaký text, jak je ukázáno níže. Jak vidíme, text je ve výchozí prázdné barvě.

Krok 1: Za tímto účelem otevřete nový modul a přidělte mu podkategorii jménem VBA Exit subit nebo v jakémkoli jiném vhodném názvu podle vaší potřeby.

Kód:

 Sub VBA_ExitSub2 () End Sub 

Krok 2: Vyberte buňku rozsahu, která obsahuje text. Zde bude naší buňkou dosahu buňka C3.

Kód:

 Rozsah sub VBA_ExitSub2 () ("C3"). Vyberte End Sub 

Krok 3: Jak potřebujeme změnit barvu písma, tak v dalším řádku kódu vyberte funkci Písmo a Barva současně, jak je ukázáno níže.

Kód:

 Rozsah Sub VBA_ExitSub2 () ("C3"). Vyberte Selection.Font.Color = End Sub 

Krok 4: Nyní vyberte barvu písma, které chceme změnit. A výběr barvy bude začínat vb podle nastavení VBA. Zde vybereme červenou, jak je ukázáno níže.

Kód:

 Rozsah Sub VBA_ExitSub2 () ("C3"). Vyberte Selection.Font.Color = vbRed End Sub 

Krok 5: Nyní zkompilujte celý kód najednou, protože je kód poměrně malý a spusťte jej. Uvidíme, že barva písma v buňce C3 je nyní změněna na červenou barvu z výchozí černé .

Krok 6: Nyní, chcete-li zde použít kód Exit Sub v kódu změny barvy písma, vložte příkaz Exit Sub před řádek kódu výběru buněk Range nebo mezi výběr buněk buněk rozsahu ( první ) a Barva písma ( druhá ), jak je uvedeno níže.

Kód:

 Rozsah Sub VBA_ExitSub2 () ("C3"). Vyberte Exit Sub Selection.Font.Color = vbRed End Sub 

Krok 7: Nyní znovu spusťte kód. Tentokrát si všimneme, že barva písma textu v buňce C3 se nezmění na červenou barvu, protože se změnila dříve, než umístíte příkaz Exit Sub .

Krok 8: Můžeme převést přidaný příkaz Exit Sub do textu vložením jediné obrácené nabídky, jak je ukázáno níže. Tímto způsobem se převede na text . Poté se barva této linie změní na zelenou.

Kód:

 Rozsah Sub VBA_ExitSub2 () ("C3"). Vyberte 'Exit Sub Selection.Font.Color = vbRed End Sub Sub 

Pros of VBA Exit Sub

  • Šetří čas při opakovaném psaní kódu.
  • Můžeme přeskočit část kódu, kterou nechceme spustit.
  • Je použitelný ve všech typech funkcí.
  • To je docela užitečné při práci na velkých řádcích kódu, kde musíme přeskočit nebo přeskočit určitou řádek kódu.

Co si pamatovat

  • VBA Exit Sub pracuje se všemi druhy kódů a funkcí, ale funguje lépe se všemi druhy Loop, zejména DO-WHILE Loop.
  • Vyskočí z části kódu a spustí pouze tolik kódu, který je před Exit Sub.
  • Exit a End Sub, oba jsou odlišné.
  • Přeskočí a vyskočí z kódu bez úplného spuštění. A napůl spuštěný kód nedává žádný správný výstup.

Doporučené články

Toto je průvodce VBA Exit Sub. Zde diskutujeme o tom, jak používat Excel VBA Exit Sub spolu s několika praktickými příklady a stahovatelnou šablonou Excel. Můžete si také prohlédnout naše další doporučené články -

  1. Jak používat VBA při opakování?
  2. VBA Odstranit duplikáty
  3. Porozumění datovým typům VBA
  4. VBA Spánek s příklady

Kategorie: