Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Rami in modo incondizionato a una riga specificata in una routine.
Sintassi
GoTo line
Parte
line
Obbligatorio. Qualsiasi etichetta di riga.
Osservazioni:
L'istruzione GoTo può diramare solo le righe della routine in cui viene visualizzata. La riga deve avere un'etichetta di riga a cui GoTo può fare riferimento. Per altre informazioni, vedere Procedura: Etichettare istruzioni.
Annotazioni
GoTo le istruzioni possono rendere difficile leggere e gestire il codice. Quando possibile, usare invece una struttura di controllo. Per altre informazioni, vedere Flusso di controllo.
Non è possibile usare un'istruzione per creare rami GoTo dall'esterno di un For...Next, For Each...Next, SyncLock...End SyncLock, Try...Catch...Finally, With...End With, o Using...End Using costruzione di un'etichetta all'interno.
Diramazione e tentativo di costruzione
All'interno di un Try...Catch...Finally costruzione, le regole seguenti si applicano alla diramazione con l'istruzione GoTo .
| Blocca o area geografica | Diramazione in dall'esterno | Diramazione dall'interno |
|---|---|---|
blocco Try |
Solo da un Catch blocco della stessa costruzione 1 |
Solo all'esterno dell'intera costruzione |
blocco Catch |
Mai consentito | Solo all'esterno dell'intera costruzione, o al Try blocco della stessa costruzione 1 |
blocco Finally |
Mai consentito | Mai consentito |
1 Se uno ...TryCatch...Finally la costruzione è annidata all'interno di un altro, un Catch blocco può diramarsi nel Try blocco a livello di annidamento, ma non in un altro Try blocco. Un oggetto annidato Try...Catch...Finally la costruzione deve essere contenuta completamente in un Try blocco o Catch della costruzione all'interno della quale è annidata.
La figura seguente mostra una Try costruzione annidata all'interno di un'altra. Vari rami tra i blocchi delle due costruzioni sono indicati come validi o non validi.
Esempio
Nell'esempio seguente viene utilizzata l'istruzione GoTo per diramare le etichette di riga in una routine.
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