Wprowadzenie do VBA Exit Sub

Wyjdź z Sub wydaje się kończyć podkategorię według nazwy. Ale w rzeczywistości Exit Sub służy do całkowitego wyskoczenia z procedury podrzędnej, nie pozwalając na ukończenie pełnego kodu. Gdy zastosujemy polecenie Exit Sub pomiędzy dowolnym kodem, wówczas kod zostanie wykonany tylko przed wykonaniem polecenia Exit Sub w VBA Excel. Kod po wyjściu z Sub zostanie pominięty i przeskoczy po nim cały kod. Wyjdź z Sub zwykle działa lepiej z Do-While Loop.

Jak zastosować Exit Sub przy użyciu VBA?

Zobaczmy przykłady Exit Sub w Excel VBA.

Możesz pobrać ten szablon VBA Exit Sub Excel tutaj - VBA Exit Sub Excel Template

Przykład 1 - VBA Exit Sub

Krok 1: Aby zastosować Exit Sub, potrzebujemy modułu. W tym celu przejdź do okna VBA. Kliknij kartę menu Wstaw, otrzymamy listę, a następnie wybierz Moduł, jak pokazano poniżej.

Krok 2: Następnie, nowo otwarty moduł, napisz podkategorię w nazwie VBA Exit Sub lub pod inną nazwą, jak pokazano poniżej.

Kod:

 Sub VBA_ExitSub1 () End Sub 

Krok 3: Zdefiniuj zmienną Dim o dowolnej nazwie, powiedzmy „ A” . I nadaj mu funkcję Integer, jak pokazano poniżej.

Kod:

 Sub VBA_ExitSub1 () Dim A As Integer End Sub 

Krok 4: Teraz otwórz pętlę Do While, jak pokazano poniżej.

Kod:

 Sub VBA_ExitSub1 () Dim A As Integer Do While End Sub 

Krok 5: Pomiędzy Do Do piszemy prosty kod porównawczy. Dodajmy zmienną A z +1. Co oznacza dodanie DO dla A o własnej wartości +1. I uruchom go, aż otrzymamy wartość +1 dla zmiennej A.

Kod:

 Sub VBA_ExitSub1 () Dim A As Integer Do A = A + 1 While End Sub 

Krok 6: Teraz, ile chcemy dodać +1 do A, zostanie określone w warunku Pętla podczas . Oznacza to, że pętla DO będzie działać zgodnie z warunkiem A + 1, gdy A jest mniejsze niż 100.

Kod:

 Sub VBA_ExitSub1 () Dim A as Integer Do A = A + 1 Loop While A <100 End Sub 

Krok 7: Teraz potrzebujemy okna komunikatu (które jest opcjonalne), aby zobaczyć wyjście pętli Do While . W tym celu wstaw MsgBox i podaj zmienną A.

Kod:

 Sub VBA_ExitSub1 () Dim A as Integer Do A = A + 1 Loop While A <100 MsgBox A End Sub 

Krok 8: Teraz skompiluj kod, naciskając klawisz F8, aby zobaczyć, czy jest jakiś błąd w kodzie, czy nie. Później uruchom cały kod, naciskając przycisk Play znajdujący się pod paskiem menu, jak pokazano poniżej. Zobaczysz okno komunikatu dało nam wynik jako 100 . Co oznacza, że ​​wartość A jest mniejsza niż 100, a wzór, który zdefiniowaliśmy w DO Loop, mówi, że wartość A wynosi A + 1. Tak więc odpowiedź nadchodzi jako 100.

Krok 9: Teraz, aby zastosować Exit Sub w wykonanej pętli Do While, musimy dodać instrukcję Exit Sub przed rozpoczęciem Do Loop lub po zdefiniowaniu zmiennej A, jak pokazano poniżej.

Kod:

 Sub VBA_ExitSub1 () Dim A As Integer Exit Sub Do A = A + 1 Loop While A <100 MsgBox A End Sub 

Teraz ponownie skompiluj kod i uruchom, jeśli nie znaleziono błędu.

Zauważymy, że nie znaleźliśmy żadnych wyników. Jest tak, ponieważ uruchamianie kodu zostało zakończone, ale przeskoczyło do pętli Do While całkowicie, nie dając żadnych danych wyjściowych w oknie komunikatu.

Przykład 2 - VBA Exit Sub

Rozważmy inny przykład. W tym przykładzie zobaczymy, jak Exit Sub pomija zmianę koloru czcionki. Ponieważ mamy trochę tekstu w komórce C3, jak pokazano poniżej. Jak widzimy, tekst ma domyślnie pusty kolor.

Krok 1: W tym celu otwórz nowy moduł i nadaj mu podkategorię pod nazwą VBA Exit sub lub pod inną odpowiednią nazwą, zgodnie z twoimi potrzebami.

Kod:

 Sub VBA_ExitSub2 () End Sub 

Krok 2: Wybierz komórkę zakresu, która zawiera tekst. Tutaj naszą komórką zakresu będzie komórka C3.

Kod:

 Sub VBA_ExitSub2 () Zakres („C3”) Wybierz End Sub 

Krok 3: Ponieważ musimy zmienić kolor czcionki, więc w następnym wierszu kodu wybierz jednocześnie funkcję Czcionka i Kolor, jak pokazano poniżej.

Kod:

 Sub VBA_ExitSub2 () Zakres („C3”) Wybierz Select.Font.Color = End Sub 

Krok 4: Teraz wybierz kolor czcionki, którą chcemy zmienić. Wybór koloru rozpocznie się od vb zgodnie z ustawieniem VBA. Tutaj wybieramy kolor czerwony, jak pokazano poniżej.

Kod:

 Sub VBA_ExitSub2 () Zakres („C3”). Wybierz Selection.Font.Color = vbRed End Sub 

Krok 5: Teraz skompiluj cały kod za jednym razem, ponieważ kod jest dość mały i uruchom go. Kolor komórki w komórce C3 zostanie zmieniony na Czerwony z domyślnego Czarnego .

Krok 6: Teraz, aby zastosować tutaj Exit Sub w kodzie zmiany koloru czcionki, umieść instrukcję Exit Sub przed linią wyboru komórek zakresu kodu lub między wyborem komórki zakresu (1 st ) a kolorem czcionki (2), jak pokazano poniżej.

Kod:

 Sub VBA_ExitSub2 () Range ("C3"). Wybierz Exit Sub Selection.Font.Color = vbRed End Sub 

Krok 7: Teraz ponownie uruchom kod. Tym razem zauważymy, że kolor czcionki tekstu w komórce C3 nie zmienia się na Czerwony, ponieważ zmienił się wcześniej przed umieszczeniem instrukcji Exit Sub .

Krok 8: Możemy przekonwertować dodaną instrukcję Exit Sub na tekst, wstawiając pojedynczy odwrócony cytat, jak pokazano poniżej. W ten sposób zostanie przekonwertowany na tekst . Następnie kolor tej linii zostanie zmieniony na zielony.

Kod:

 Sub VBA_ExitSub2 () Range („C3”). Wybierz „Exit Sub Selection.Font.Color = vbRed End Sub 

Plusy VBA Exit Sub

  • Oszczędność czasu przy ciągłym przepisywaniu kodu.
  • Możemy pominąć część kodu, której nie chcemy uruchamiać.
  • Ma zastosowanie we wszystkich typach funkcji.
  • Jest to bardzo przydatne podczas pracy z dużymi liniami kodu, w których musimy pominąć lub przeskoczyć pewną linię kodu.

Rzeczy do zapamiętania

  • VBA Exit Sub działa z wszystkimi rodzajami kodów i funkcji, ale działa lepiej z wszelkiego rodzaju pętlami, zwłaszcza pętlami DO-WHILE.
  • Wyskakuje z części kodu i uruchamia tylko tyle kodu, który jest przed Exit Sub.
  • Wyjście i End Sub, oba są różne.
  • Pomija i wyskakuje z kodu, nie uruchamiając go całkowicie. A kod połowiczny nie daje żadnego poprawnego wyniku.

Polecane artykuły

To jest przewodnik po VBA Exit Sub. Tutaj omawiamy sposób korzystania z Excel VBA Exit Sub wraz z kilkoma praktycznymi przykładami i szablonem Excel do pobrania. Możesz także przejrzeć nasze inne sugerowane artykuły -

  1. Jak korzystać z VBA While Loop?
  2. VBA Usuń duplikaty
  3. Zrozumienie typów danych VBA
  4. VBA Sen z przykładami

Kategoria: