VBA GoTo Line Label

Izjava GoTo v VBA vam omogoča skok na vrstico kode.

Najprej ustvarite oznako vrstice kjer koli v kodi:

1 Preskoči:

Nato dodajte izjavi »GoTo«, da skočite na oznako vrstice

1 Pojdi preskoči

Pojdi na primere

Ta primer preizkuša leto. Če je leto 2022 ali pozneje, bo oznaka vrstice preskočila. To vam omogoča, da preskočite kodo, če so izpolnjeni določeni pogoji.

123456789101112 Sub GoTo_Example ()Zatemnjeno leto kot celo številoleto = 2019Če je leto> = 2019, potem pojdite na Preskoči„Podatki o procesih za leta <2022MsgBox "Leto je pred letom 2022"Preskoči:End Sub

Pojdi do oznak z več vrsticami

Izjave GoTo lahko uporabite tudi za skok na ustrezne vrstice kode. Prilagodimo naš prejšnji primer, da se premaknemo na različne kodne lokacije glede na to, za katero leto gre:

1234567891011121314151617181920212223242526272829303132 Sub GoTo_Statement ()Zatemnjeno leto kot celo številoleto = 2019Če je leto = 2019, potemGremo v leto 2019Če je leto = 2010, potemGremo na leto 2020Sicer paGremo na leto 2021Konec Čeleto 2019:„Postopek 2022MsgBox "Leto je 2022"Pojdi na EndProcleto 2020:„Postopek 2022MsgBox "Leto je 2022"Pojdi na EndProcleto 2021:„Postopek 2022+MsgBox "Leto je 2022+"EndProc:End Sub

Pred vsako oznako vrstice opazite »GoTo EndProc«. To vrstico kode smo dodali tako, da so ti odseki kode preskočeni, razen če do njih dostopa ustrezni »GoTo«.

GoTo Error Handler Konec postopka

Zdaj pa uporabimo Error Handling za konec postopka, če pride do napake.

123456789101112 Sub GoTo_OnError ()Dim i kot celo številoNapaka GoTo EndProci = 5/0MsgBox iEndProc:End Sub

Pojdi na ponovitev kode

Naš zadnji primer bo uporabil GoTo Statement za ponovitev neke kode.

Spodaj uporabljamo sporočilo Da / Ne (kliknite, če želite izvedeti več), da potrdimo, da uporabnik opozorilo priznava. Če kliknejo 'Ne', se bo sporočilo znova prikazalo, dokler ne kliknejo 'Da' (glej spodaj GIF).

1234567891011 Sub GoTo_YesNoMsgBox ()Ponovi sporočilo:Zatemnjen odgovor kot celo številoanswer = MsgBox ("OPOZORILO: Ta datoteka je bila odprta kot datoteka samo za branje, kar pomeni, da vse spremembe, ki jih naredite, ne bodo shranjene, razen če/dokler nimate pravic za dostop do pisanja." & _Chr (13) & Chr (13) & "Izberite File, SaveAs, da shranite kopijo, preden začnete delati v tej datoteki." & vbNewLine & vbNewLine & "Ali razumete?", vbExclamation + vbDaNe, "OPOZORILO!")Če je odgovor = vbNe Potem pojdi na PonoviMsg "Ponovi, dokler uporabnik ne klikne" Da "End Sub

VBA Pojdi na linijsko oznako v Access VBA

Vsi zgornji primeri delujejo popolnoma enako v Access VBA kot v Excelu VBA.

1234567 Sub TestGoTo ()Napaka GoTo se končaDoCmd.OpenForm "FrmClients"Zapri podzaključek:MsgBox "Obrazca ni mogoče odpreti"End Sub

Vam bo pomagal razvoj spletnega mesta, ki si delijo stran s svojimi prijatelji

wave wave wave wave wave