On...GoSub Statement; On...GoTo Statement
āĻ¸āĻāĻā§āĻ¯āĻžāĻ¸ā§āĻāĻ āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻļāĻ¨ā§āĻ° āĻŽāĻžāĻ¨ā§āĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻļā§āĻ˛, āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻā§āĻĄā§ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ˛āĻžāĻāĻ¨ā§āĻ° āĻāĻāĻāĻŋāĻ¤ā§ āĻļāĻžāĻāĻžāĻā§āĻā§āĻ¤ āĻāĻ°ā§ āĻĨāĻžāĻā§āĨ¤
āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸:
On N GoSub Label1[, Label2[, Label3[,...]]]
On NumExpression GoTo Label1[, Label2[, Label3[,...]]]
āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ°:
NumExpression: 0 āĻāĻŦāĻ 255 āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¯ā§āĻā§āĻ¨ā§ āĻ¸āĻāĻā§āĻ¯āĻžāĻ¸ā§āĻāĻ āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻļāĻ¨ āĻ¯āĻž āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻļāĻžāĻāĻž āĻšāĻŋāĻ¸ā§āĻŦā§ āĻā§āĻ¨ āĻ˛āĻžāĻāĻ¨āĻāĻŋ āĻ°ā§ā§āĻā§ āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§ āĻĨāĻžāĻā§āĨ¤ āĻ¯āĻĻāĻŋ NumExpression āĻāĻ° āĻŽāĻžāĻ¨ 0 āĻšā§, āĻ¤āĻžāĻšāĻ˛ā§ āĻ¸ā§āĻā§āĻāĻŽā§āĻ¨ā§āĻāĻŋ āĻāĻžāĻ˛āĻžāĻ¨ā§ āĻšā§ āĻ¨āĻžāĨ¤ āĻ¯āĻĻāĻŋ NumExpression āĻāĻ° āĻŽāĻžāĻ¨ āĻ¯āĻĻāĻŋ 0 āĻāĻ° āĻāĻžāĻāĻ¤ā§ āĻŦā§ āĻšā§, āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸ā§āĻĨāĻžāĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻ¤āĻ°ā§ āĻāĻ˛ā§ āĻ¯āĻžā§ āĻ¯āĻž āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻļāĻ¨ (1 = āĻĒā§āĻ°āĻĨāĻŽ āĻ˛ā§āĻŦā§āĻ˛; 2 = āĻĻā§āĻŦāĻŋāĻ¤ā§ā§) āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻāĻāĻāĻŋ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻā§āĻ°āĻŽ āĻ°ā§ā§āĻā§āĨ¤
āĻ˛ā§āĻŦā§āĻ˛: 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