U VBA -i za prekid izvođenja SVOG koda koristite Kraj naredba.
1 | Kraj |
Kad dođe do izvršenja koda Kraj, odmah će završiti izvođenje i napustiti program.
Ako želite naučiti kako izaći iz podgreške na pogrešci, kliknite na ovu vezu: VBA pri pogrešci izađi iz podvrste
Ako želite naučiti kako izaći iz pod -funkcije ili funkcije, kliknite na ovu vezu: VBA izlaz iz pod -funkcije ili funkcije
Zatvorite sav kod u VBA -i
Na primjeru ćete vidjeti što se događa kada koristimo Kraj naredba u VBA. Stvorili smo podmornicu EndSub, koji ima Kraj zapovijedi unutra. Ovaj Sub se zove iz Pozovite EndSub. Evo koda:
123456789101112131415161718 | Privatni Sub EndSub ()Dim i Kao cijeli brojZa i = 1 do 10Ako je i = 5 TadaMsgBox "Vrijednost i je" & iKrajZavrši akoSljedeći iKraj podmPrivatni pomoćni pozivEndSub ()Nazovite EndSubMsgBox "End Sub"Kraj podm |
U EndSub, prvo ulazimo u For Loop ako je vrijednost i manja od 10:
123 | Za i = 1 do 10Sljedeći i |
Nakon toga provjeravamo je li vrijednost i jednaka 5, pomoću naredbe If. Ako je vrijednost 5, vratit ćemo okvir s vrijednošću i i upotrijebiti naredbu Kraj.
1234567 | Ako je i = 5 TadaMsgBox "Vrijednost i je" & iKrajZavrši ako |
Ako uvjet nije ispunjen, sljedeći izraz povećava i za 1 i ponovno ulazi u For petlju:
1 | Sljedeći i |
U Pozovite EndSub, prvo zovemo Sub EndSub:
1 | Nazovite EndSub |
Nakon toga vraćamo okvir za poruku:
1 | MsgBox "End Sub" |
Ako pokrenete Pozovite EndSub, prvo će nazvati EndSub. Izvršite li ovaj kôd u načinu otklanjanja pogrešaka, vidjet ćete da će proći petlju 5 puta. U 5th iteracija, vrijednost varijable i postaje 5 i kôd ulazi u If tijelo. Sada je MsgBox "Vrijednost i je" & i izvršava se i Kraj nakon toga:
Slika 1. VBA kraj
Kao što vidite, izvršavanje koda se zaustavlja odmah nakon Kraj naredba, pa je MsgBox "End Sub" nikad se ne izvršava.