Izjava Excel VBA GoTo

VBA Goto Izjava koristi se za prevladavanje predviđenih pogrešaka, dok u VBA dodajemo i stvaramo ogroman kôd linija. Ova funkcija u VBA omogućava nam da ispunimo čitav kod prema našim predviđanjima ili pretpostavkama. Uz pomoć Goto možemo ići do bilo kojeg određenog koda linije ili lokacije u VBA. Postoje dva načina za postizanje toga što ćemo vidjeti u narednim primjerima.

Kako koristiti Excel VBA Goto izjavu?

Naučit ćemo kako koristiti Excel VBA Goto Statement s nekoliko primjera.

Ovaj VBA predložak GoTo Excel možete preuzeti ovdje - VBA predložak GoTo Excel

Primjer 1

Prvi način korištenja VBA Goto je Application.Goto metodom. Pomoću Application.Goto izjave možemo na bilo koje određeno mjesto, radnu knjižicu ili radni list koji je trenutno otvoren. Ova će izjava izgledati kao dolje.

  • (Upućivanje): Ovo nije ništa drugo nego navedena referenca ćelije. Ako referenca nije zadana prema zadanom, odvest će vas do zadnjeg korištenog raspona ćelija.
  • (Pomicanje): Ovo je logična izjava TRUE ili FALSE. Ako je vrijednost TRUE, pomaknut će se kroz prozor, a ako vrijednost FALSE, neće se pomicati kroz prozor.

Za to idite na VBA prozor i kliknite na Module koji se nalazi u izborniku Insert kao što je prikazano u nastavku.

Sada će otvoriti novi Modul. Tamo napišemo Potkategoriju makronaredbe s imenom Goto dok izvodimo taj kod kao što je prikazano u nastavku.

Kodirati:

 Sub VBAGoto () Kraj Sub 

Sada napišite Application.Goto da omogućite aplikaciju ili mjesto gdje želimo ići.

Kodirati:

 Sub VBAGoto () aplikacija.Goto Kraj Sub 

Nakon toga navedite referencu na bilo koji radni list ili radnu knjižicu i raspon ćelija. Ovdje smo dali niz ćelija B3 i radne listove nazvane "VBA Goto".

Kodirati:

 Pod VBAGoto () Application.Goto Reference: = Radni listovi ("VBA_Goto1"). Raspon ("B3"), Kraj Sub 

Za stvarno odlazak u spomenutu ćeliju moramo dodati Arroll argument koji će nas izravno odvesti u navedenu ćeliju. Sada ćemo izmijeniti argument pomicanja iz FALSE kao što je prikazano u nastavku.

Kodirati:

 Pod VBAGoto () Application.Goto Reference: = Radni listovi ("VBA_Goto1"). Raspon ("B3"), Pomičite se: = False End Sub 

Nakon pokretanja koda pomoću tipke F5 ili ručno, vidjet ćemo da će se kursor pomaknuti u ćeliju B3 bez promjene orijentacije odabranog lista, kao što je prikazano u nastavku.

Sada ćemo promijeniti Arroll argument iz FALSE u TRUE.

Kodirati:

 Pod VBAGoto () Application.Goto Reference: = Radni listovi ("VBA_Goto1"). Raspon ("B3"), Pomaknite: = True End Sub 

U početku držimo kursor u ćeliji A5 kao što je prikazano u nastavku. Sada pokrenite kompletni kôd pomoću tipke F5 ili ručno. Vidjet ćemo kursor koji se nalazio u ćeliji A5, sada se pomaknuo prema gore i prebacio na ćeliju B3, a cijela se tablica pomaknula na gornju razinu lista, počevši od iste ćelije kao i B3 kao što je prikazano na slici ispod.

Primjer 2

Postoji još jedan način korištenja VBA argumenta Goto. Koristeći Goto u VBA na ovom primjeru, možemo preskočiti argument koji uzrokuje pogrešku. U tu svrhu umetnite novi modul u VBA i pokrenite potkategoriju s nazivom argumenata koji se koristi kao što je prikazano u nastavku. Možete koristiti bilo koje drugo ime.

Kodirati:

 Sub VBAGoto () Kraj Sub 

Za to ćemo razmotriti 3 cjelobrojne brojeve X, Y i Z otvaranjem potkategorije u VBA kao što je prikazano u nastavku.

Kodirati:

 Sub VBAGoto () Dim X kao cjelobrojni, Y kao cjelobrojni, Z kao cjeloviti kraj Sub 

Sada razmotrimo i neke matematičke podjele gdje ćemo podijeliti 10, 20 i 30 s 0, 2 i 4 kao što je prikazano u nastavku.

Kodirati:

 Sub VBAGoto () Dim X kao cjelobrojni, Y kao cjelobrojni, Z kao cjelobrojni X = 10/0 Y = 20/2 Z = 30/4 Krajnji pot 

Ako pokrenemo kôd, dobit ćemo istu poruku o pogrešci pokretanja 11.

Iznad poruke o pogrešci Pogreška u vremenu izvršavanja '11' dolazi samo kada je napisani matematički izraz netočan. Sada da nadoknadimo ovu pogrešku, upotrijebit ćemo tekst On Error GoTo s riječju YResult da preskočimo poruku o pogrešci i dobijemo izlaz koji djeluje u redu kako je prikazano u nastavku.

Ipak, naš kod nije dovršen. Korištenjem Gotoa s izjavom " YResult :" preskočit će samo liniju retka pogreške. No, opet će se pokazati pogreška jer Labe nije definiran kao što je prikazano u nastavku.

Kodirati:

 Sub VBAGoto () Dim X kao cjelobrojni, Y kao cjelobrojni, Z kao cjelobrojni na pogrešci GoTo YResult: X = 10/0 Y = 20/2 Z = 30/4 Krajnji pot 

Sada da bismo ga dovršili, trebamo definirati Oznaku . Oznaka je dio iskaza u VBA kodiranju, koji se koristi kada želimo preskočiti određeni dio koda u bilo koju definiranu primjenjivu liniju koda. Kao što već imamo YResult s argumentom Goto . Zatim ćemo umetnuti isti prije celog broja Y. Sada ponovo pokrenite kôd.

Kodirati:

 Pod VBAGoto () Dim X kao cjelobrojni, Y kao cjelobrojni, Z kao cjelobrojni na pogrešci GoTo YResult: X = 10/0 YResult: Y = 20/2 Z = 30/4 Krajnji pot 

Kao što smo vidjeli i učinili, nismo dobili nikakvu poruku o pogrešci što znači da je naš kôd ispravan i preskačemo onu liniju koda koja je uzrokovala pogrešku i davali izlaz tamo gdje je ispisan ispravan kod. Sada za ispis rezultata koda trebate umetnuti okvire za poruke za svaki Integer s argumentom pomoći MsgBox kao što je prikazano u nastavku.

Kodirati:

 Pod VBAGoto () Dim X kao cjelobrojni, Y kao cjelobrojni, Z kao cjelobrojni na pogrešci GoTo YResult: X = 10/0 YResult: Y = 20/2 Z = 30/4 MsgBox X MsgBox Y MsgBox Z Kraj Sub 

Nakon završetka pokrenite cijeli kod da biste vidjeli izlaz. Izlaz ćemo podijeliti za svaki definirani cijeli broj kao 0, 10 i 8 kao što je prikazano na slici ispod.

Izjava o grešci GoTo YResult pomogla nam je da izravno skočimo na spomenuti rezultatni cijeli broj kao što smo to učinili za cijeli broj Y. A izlaz za X kao 0 pokazuje da je napisana pogrešna argumentacija izjave. Oznaku možemo dobiti i prije Z, ali to bi nam dalo rezultat samo Z cijeli broj. Za X i Y opet će biti 0 kao izlaz.

Pros VBA na pogreške

  • Možemo izračunati bilo koju matematičku formulu, čak i ako je netočna.
  • Za veće strukture kodiranja gdje postoje šanse ili imaju pogreške, korištenje GoTo može dati ispravan rezultat čak i među linijama kodova.
  • To daje bolji rezultat u usporedbi s rezultatom dobivenim iz normalnih excel proračuna iako ima pogrešan argument.

Stvari koje treba zapamtiti

  • Ne zaboravite na datoteku u makro-omogućenoj Excelu kako bismo mogli više puta i više puta koristiti stvoreni VBA kôd.
  • Sastavite pisani kod prije primjene bilo kojeg zahtjeva za excel.
  • Napisani kôd možete dodijeliti bilo kojem gumbu kako bismo brzo mogli kliknuti na gumb i pokrenuti ga.
  • Koristite Label kao što je prikazano u primjeru 2 na odgovarajući način kako bismo dobili rezultat za potpuni ispravan kôd.

Preporučeni članci

Ovo je Vodič za VBA GoTo izjavu. Ovdje smo raspravljali o tome kako koristiti Excel VBA GoTo izjavu zajedno s nekoliko praktičnih primjera i preuzeti Excel predložak. Možete i pregledati naše druge predložene članke -

  1. Kako koristiti Excel VBA petlje?
  2. VBA funkcija u Excelu
  3. Vodič za domet u Excelu
  4. Kako se koristi VBA VLOOKUP funkcija?

Kategorija: