Оператори On...GoSub и On...GoTo

Извършва преход към един от няколко зададени реда от програмния код според стойността на числов израз.

Синтаксис:

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

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

Параметри:

NumExpression: числов израз със стойност между 0 и 255, който определя към кой ред да се извърши преход. Ако NumExpression е 0, операторът не се изпълнява. Ако NumExpression е по-голям от 0, управлението преминава към етикета, чиято позиция съответства на стойността (1 = първи етикет; 2 = втори етикет).

Label: ред – местоназначение според структурата на GoTo или GoSub.

Икона Бележка

Важат правилата за GoTo или GoSub.


Пример:

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 & " From Sub 1 to " : Return

Sub2:

    sVar = sVar & " From Sub 2 to " : Return

Line1:

    sVar = sVar & " Label 1" : GoTo Ende

Line2:

    sVar = sVar & " Label 2"

Ende:

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

End Sub