VBA GoTo ein Zeilenlabel

Mit der GoTo-Anweisung in VBA können Sie zu einer Codezeile springen.

Erstellen Sie zuerst eine Zeilenbezeichnung an einer beliebigen Stelle in Ihrem Code:

1 Überspringen:

Fügen Sie dann der Anweisung „GoTo“ hinzu, um zur Zeilenbezeichnung zu springen

1 Gehe zu Überspringen

GoTo-Beispiele

Dieses Beispiel testet das Jahr. Wenn das Jahr 2022 oder später ist, wird GoTo das Label Skip line angezeigt. Auf diese Weise können Sie Code überspringen, wenn bestimmte Bedingungen erfüllt sind.

123456789101112 Unter GoTo_Example()Dim Jahr As IntegerJahr = 2019Wenn Jahr >= 2019, dann GoTo Skip'Prozessdaten für Jahre < 2022MsgBox "Jahr ist vor 2022"Überspringen:End Sub

GoTo Mehrzeilige Labels

Sie können auch GoTo-Anweisungen verwenden, um zu relevanten Codezeilen zu springen. Passen wir unser vorheriges Beispiel an, um je nach Jahr zu verschiedenen Code-Speicherorten zu wechseln:

1234567891011121314151617181920212223242526272829303132 Unter GoTo_Statement()Dim Jahr As IntegerJahr = 2019Wenn Jahr = 2019 DannGoTo-Jahr2019SonstWenn Jahr = 2010 DannGoTo Jahr2020AndersGoTo-Jahr2021Ende WennJahr2019:"Prozess 2022"MsgBox "Jahr ist 2022"GoTo EndProcJahr2020:"Prozess 2022"MsgBox "Jahr ist 2022"GoTo EndProcJahr2021:'Prozess 2022+MsgBox "Jahr ist 2022+"EndProc:End Sub

Beachten Sie das „GoTo EndProc“ vor jeder Zeilenbezeichnung. Wir haben diese Codezeile hinzugefügt, damit diese Codeabschnitte übersprungen werden, es sei denn, sie werden mit dem entsprechenden „GoTo“ aufgerufen.

GoTo Error Handler Ende des Verfahrens

Lassen Sie uns nun die Fehlerbehandlung verwenden, um zum Ende der Prozedur zu gelangen, wenn ein Fehler auftritt.

123456789101112 Unter GoTo_OnError ()Dim i As IntegerBei Fehler GoTo EndProci = 5 / 0MsgBox iEndProc:End Sub

GoTo-Wiederholungscode

Unser letztes Beispiel verwendet die GoTo-Anweisung, um Code zu wiederholen.

Unten verwenden wir eine Ja / Nein-Nachrichtenbox (Klicken Sie, um mehr zu erfahren), um zu bestätigen, dass der Benutzer die Warnung bestätigt. Wenn sie auf „Nein“ klicken, wird das Meldungsfeld erneut angezeigt, bis sie auf „Ja“ klicken (siehe GIF unten).

1234567891011 Unter GoTo_YesNoMsgBox()Nachricht wiederholen:Dim answer As Integeranswer = MsgBox("WARNUNG: Diese Datei wurde als schreibgeschützte Datei geöffnet, was bedeutet, dass alle von Ihnen vorgenommenen Änderungen nicht gespeichert werden, es sei denn, Sie haben Schreibzugriffsrechte. " & _Chr(13) & Chr(13) & "Datei auswählen, Speichern unter, um eine Kopie zu speichern, bevor Sie in dieser Datei arbeiten." & vbNewLine & vbNewLine & "Verstehen Sie?", vbAusrufezeichen + vbJaNein, "WARNUNG!")If answer = vbNo Then GoTo RepeatMsg 'Wiederholen, bis der Benutzer auf "Ja" klicktEnd Sub

VBA GoTo eine Zeilenbezeichnung in Access VBA

Alle oben genannten Beispiele funktionieren in Access VBA genauso wie in Excel VBA.

1234567 UntertestGoTo()Bei Fehler GoTo-EndeDoCmd.OpenForm "FrmClients"Abo beendenEnde:MsgBox "Formular kann nicht geöffnet werden"End Sub

Sie werden die Entwicklung der Website helfen, die Seite mit Ihren Freunden teilen

wave wave wave wave wave