On...GoSub Statement; On...GoTo Statement

Es bifurca cap a una de les diverses línies especificades al codi del programa, segons el valor d'una expressió numèrica.

Sintaxi:

On N GoSub Label1[, Label2[, Label3[,...]]]

On NumExpression GoTo Label1[, Label2[, Label3[,...]]]

Paràmetres:

NumExpression: Qualsevol expressió numèrica entre 0 i 255 que determina cap a quina de les línies es dirigeix el programa. Si NumExpression és 0, l'expressió no s'executa. Si NumExpression és superior a 0, el programa salta a l'etiqueta que té un número de posició que correspon a l'expressió (1 = Primera Etiqueta; 2 = Segona Etiqueta)

Label: Línia de destinació segons l'estructura GoTo o GoSub.

Icona de nota

Les convencions GoTo o GoSub són vàlides.


Exemple:

Sub ExampleOnGosub

Dim iVar As Integer

Dim sVar As String

    iVar = 2

    sVar =""

    On iVar GoSub Sub1, Sub2

    On iVar GoTo Line1, Line2

    Exit Sub

Sub1:

    sVar =sVar & " De Sub 1 a" : Return

Sub2:

    sVar =sVar & " De Sub 2 a" : Return

Line1:

    sVar =sVar & " Etiqueta 1" : GoTo Ende

Line2:

    sVar =sVar & " Etiqueta 2"

Ende:

    MsgBox sVar,0,"On...GoSub"

End Sub