VBA GoTo a Line Label

GoTo paziņojums VBA ļauj pāriet uz koda rindu.

Vispirms izveidojiet līnijas iezīmi jebkurā sava koda vietā:

1 Izlaist:

Pēc tam pievienojiet paziņojumam “GoTo”, lai pārietu uz līnijas etiķeti

1 GoTo izlaist

GoTo piemēri

Šis piemērs pārbauda gadu. Ja gads ir 2022. gads vai vēlāk, tas tiks norādīts uz Izlaist līnijas iezīmi. Tas ļauj izlaist kodu, ja ir izpildīti noteikti nosacījumi.

123456789101112 Sub GoTo_Example ()Dim gads Kā vesels skaitlisgads = 2019Ja gads> = 2019, tad GoTo izlaist“Apstrādāt datus par gadiem <2022MsgBox "Gads ir pirms 2022. gada"Izlaist:Beigu apakš

GoTo vairāku līniju etiķetes

Varat arī izmantot GoTo paziņojumus, lai pārietu uz atbilstošajām koda rindām. Pielāgosim savu iepriekšējo piemēru, lai dotos uz dažādām koda atrašanās vietām atkarībā no tā, kurš gads ir:

1234567891011121314151617181920212223242526272829303132 Sub GoTo_Statement ()Dim gads Kā vesels skaitlisgads = 2019Ja gads = 2019, tadGoTo gads 2019CitādiJa gads = 2010 TadGoTo gads 2020CitādiGoTo gads 2021Beigas Jagads 2019:“Process 2022MsgBox "Gads ir 2022"GoTo EndProcgads 2020:“Process 2022MsgBox "Gads ir 2022"GoTo EndProc2021. gads:“Process 2022+MsgBox "Gads ir 2022+"EndProc:Beigu apakš

Ievērojiet “GoTo EndProc” pirms katras līnijas etiķetes. Mēs pievienojām šo koda rindu, lai šīs koda sadaļas tiktu izlaistas, ja vien tām nevar piekļūt attiecīgais “GoTo”.

GoTo kļūdu apstrādātājs Procedūras beigas

Tagad, ja rodas kļūda, izmantosim kļūdu apstrādi, lai pabeigtu procedūru.

123456789101112 Apakš GoTo_OnError ()Dim i As IntegerPar kļūdu GoTo EndProci = 5 /0MsgBox iEndProc:Beigu apakš

GoTo atkārtot kodu

Mūsu pēdējais piemērs izmantos GoTo paziņojumu, lai atkārtotu kādu kodu.

Tālāk mēs izmantojam ziņojuma lodziņu Jā / Nē (noklikšķiniet, lai uzzinātu vairāk), lai apstiprinātu, ka lietotājs atzīst brīdinājumu. Ja viņi noklikšķina uz “Nē”, ziņojumu lodziņš tiks parādīts vēlreiz, līdz noklikšķinās uz “Jā” (skatiet GIF zemāk).

1234567891011 Sub GoTo_YesNoMsgBox ()Atkārtot ziņu:Blāva atbilde Kā vesels skaitlisanswer = MsgBox ("BRĪDINĀJUMS: Šis fails tika atvērts kā tikai lasāms fails, kas nozīmē, ka jūsu veiktās izmaiņas netiks saglabātas, ja vien/kamēr jums nebūs rakstīšanas piekļuves tiesību." & _Chr (13) & Chr (13) & "Izvēlieties failu, SaveAs, lai saglabātu kopiju pirms darba šajā failā." & vbNewLine & vbNewLine & "Vai jūs saprotat?", vbIzsaukums + vbJāNē, "BRĪDINĀJUMS!")Ja atbilde = vbNē, tad GoTo RepeatMsg 'Atkārtojiet, līdz lietotājs noklikšķina uz "Jā"Beigu apakš

VBA GoTo Line etiķete Access VBA

Visi iepriekš minētie piemēri Access VBA darbojas tieši tāpat kā programmā Excel VBA.

1234567 Sub TestGoTo ()Kļūda GoTo beidzasDoCmd.OpenForm "FrmClients"Iziet no apakšnodaļasbeigas:MsgBox "Nevar atvērt veidlapu"Beigu apakš

Jums palīdzēs attīstību vietā, daloties lapu ar draugiem

wave wave wave wave wave