VBA GoTo a Line Label

GoTo -erklæringen i VBA giver dig mulighed for at springe til en kodelinje.

Opret først en linjemærke hvor som helst i din kode:

1 Springe:

Tilføj derefter til "GoTo" -udsagn for at springe til linjemærkaten

1 Gå til spring

GoTo -eksempler

Dette eksempel tester året. Hvis året er 2022 eller senere, går det til etiketten Spring linje over. Dette giver dig mulighed for at springe over kode, hvis visse betingelser er opfyldt.

123456789101112 Sub GoTo_Example ()Dim år som heltalår = 2019Hvis år> = 2019 Så spring til'Behandl data for år <2022MsgBox "År er før 2022"Springe:Afslut Sub

GoTo flere linjemærker

Du kan også bruge GoTo -sætninger til at springe til relevante kodelinjer. Lad os justere vores tidligere eksempel til at gå til forskellige kodeplaceringer baseret på hvilket år det er:

1234567891011121314151617181920212223242526272829303132 Sub GoTo_Statement ()Dim år som heltalår = 2019Hvis år = 2019 SåGå til år 2019ElseIf år = 2010 SåGå til år 2020AndetGå til år 2020Afslut Hvisår2019:'Proces 2022MsgBox "År er 2022"GoTo EndProcår 2020:'Proces 2022MsgBox "År er 2022"GoTo EndProcår2021:'Behandl 2022+MsgBox "År er 2022+"EndProc:Afslut Sub

Bemærk "GoTo EndProc" før hver linjemærke. Vi tilføjede denne kodelinje, så disse kodesektioner springes over, medmindre der er adgang til den relevante "GoTo".

GoTo Error Handler Afslutning af procedure

Lad os nu bruge Fejlhåndtering til at gå til slutningen af ​​proceduren, hvis der er en fejl.

123456789101112 Sub GoTo_OnError ()Dim i As IntegerVed fejl GoTo EndProci = 5/0MsgBox iEndProc:Afslut Sub

GoTo Gentag kode

Vores sidste eksempel vil bruge GoTo -erklæringen til at gentage nogle kode.

Nedenfor bruger vi en Ja / Nej -meddelelsesboks (klik for at få mere at vide) for at bekræfte, at brugeren anerkender advarslen. Hvis de klikker på 'Nej', vises meddelelsesboksen igen, indtil de klikker på 'Ja' (se GIF nedenfor).

1234567891011 Sub GoTo_YesNoMsgBox ()Gentag besked:Dim svar som heltalanswer = MsgBox ("ADVARSEL: Denne fil blev åbnet som en skrivebeskyttet fil, hvilket betyder, at eventuelle ændringer, du foretager, ikke gemmes, medmindre/indtil du har skriveadgangsrettigheder." & _Chr (13) & Chr (13) & "Vælg File, SaveAs for at gemme en kopi, før du arbejder i denne fil." & vbNewLine & vbNewLine & "Forstår du?", vbExclamation + vbYesNo, "ADVARSEL!")Hvis svar = vbNo Så skal GoTo RepeatMsg 'Gentag, indtil brugeren klikker på "Ja"Afslut Sub

VBA Gå til en linjemærke i Access VBA

Alle ovenstående eksempler fungerer nøjagtig det samme i Access VBA som i Excel VBA.

1234567 Sub TestGoTo ()Ved fejl GoTo endingDoCmd.OpenForm "FrmClients"Afslut SubSlutning:MsgBox "Kan ikke åbne formular"Afslut Sub

Du vil bidrage til udviklingen af ​​hjemmesiden, at dele siden med dine venner

wave wave wave wave wave