Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Vertakkingen voorwaardelijke naar een opgegeven regel in een procedure.
Syntaxis
GoTo line
Onderdeel
line
Verplicht. Een lijnlabel.
Opmerkingen
De GoTo instructie kan alleen vertakken naar regels in de procedure waarin deze wordt weergegeven. De regel moet een lijnlabel hebben waarnaar GoTo kan verwijzen. Voor meer informatie, zie Hoe te: Label Statements.
Opmerking
GoTo instructies kunnen code moeilijk te lezen en te onderhouden maken. Gebruik waar mogelijk een besturingsstructuur. Zie Controlestroom voor meer informatie.
U kunt een GoTo instructie niet gebruiken om van buiten een For...Next, For Each..., SyncLock...Next, Try...CatchEnd SyncLock...Finally, With...End With, of Using...End Using constructie naar een etiket binnen.
Vertakkingen en bouw proberen
Binnen een Try...Catch...Finally constructie, de volgende regels zijn van toepassing op vertakking met de GoTo instructie.
| Blokkeren of regio | Vertakking van buiten | Vertakking van binnenuit |
|---|---|---|
Try blok |
Alleen van een Catch blok van dezelfde constructie 1 |
Alleen naar buiten de hele constructie |
Catch blok |
Nooit toegestaan | Alleen aan buiten de hele constructie, of aan het Try blok van dezelfde constructie 1 |
Finally blok |
Nooit toegestaan | Nooit toegestaan |
1 Als één Try...Catch...Finally constructie is genest binnen een ander blok, een Catch blok kan op zijn eigen nestniveau in het Try blok vertakken, maar niet in een ander Try blok. Een geneste Try...Catch...Finally de constructie moet volledig zijn opgenomen in een Try of Catch blok van de constructie waarin deze genest is.
In de volgende afbeelding ziet u de ene Try constructie die in een andere is genest. Verschillende takken tussen de blokken van de twee constructies worden aangegeven als geldig of ongeldig.
Voorbeeld
In het volgende voorbeeld wordt de GoTo instructie gebruikt om te vertakken naar regellabels in een procedure.
Sub GoToStatementDemo()
Dim number As Integer = 1
Dim sampleString As String
' Evaluate number and branch to appropriate label.
If number = 1 Then GoTo Line1 Else GoTo Line2
Line1:
sampleString = "Number equals 1"
GoTo LastLine
Line2:
' The following statement never gets executed because number = 1.
sampleString = "Number equals 2"
LastLine:
' Write "Number equals 1" in the Debug window.
Debug.WriteLine(sampleString)
End Sub