Instrucción On… GoSub; Instrucción On… GoTo
Bifurca a una de varias líneas especificadas del código del programa, dependiendo del valor de una expresión numérica.
Sintaxis:
On N GoSub Etiqueta1[, Etiqueta2[, Etiqueta3[,...]]]
On ExpresiónNum GoTo Etiqueta1[, Etiqueta2[, Etiqueta3[,...]]]
Parámetros:
ExpresiónNum: Cualquier expresión numérica entre 0 y 255 que determine a qué línea bifurca el programa. Si ExpresiónNum es 0, la instrucción no se ejecuta. Si ExpresiónNum es mayor que 0, el programa salta a la etiqueta que tiene un número de posición que corresponde a la expresión (1 = Primera etiqueta; 2 = Segunda etiqueta)
Etiqueta: Línea destino de acuerdo con la estructura GoTo o GoSub.
Las convenciones de GoTo o GoSub son válidas.
Ejemplo:
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 Final
Line2:
sVar =sVar & " Etiqueta 2"
Ende:
MsgBox sVar,0,"On...GoSub"
End Sub