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 TemplatePrzykł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 -
- Jak korzystać z VBA While Loop?
- VBA Usuń duplikaty
- Zrozumienie typów danych VBA
- VBA Sen z przykładami