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š |