On...GoSub Statement; On...GoTo Statement
Lauseella haaraudutaan yhteen useista mahdollisista ohjelmakoodin riveistä, riippuen numeerisen lausekkeen arvosta.
Syntaksi:
On N GoSub tunnus1[, tunnus2[, tunnus3[,...]]]
On numeerinen_lauseke GoTo tunnus1[, tunnus2[, tunnus3[,...]]]
Parametrit:
Numeerinen_lauseke: Arvoltaan väliltä 0...255 oleva numeerinen lauseke, joka määrää, mihin rivitunnukseen ohjelma haarautuu. Jos numeerinen_lauseke on 0, lausetta ei suoriteta. Jos numeerinen_lauseke on suurempi kuin 0, ohjelma hyppää tunnukseen, jonka asema vastaa lausekkeen arvoa (1 = ensimmäinen tunnus; 2 = toinen tunnus ...)
Tunnus: kohderivi GoTo tai GoSub-rakenteen mukaisesti.
GoTo tai GoSub -käytänteet ovat voimassa.
Esimerkki:
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 & " Sub1:stä" : Return
Sub2:
sVar =sVar & " Sub2:sta" : Return
Line1:
sVar =sVar & " Line1:een" : GoTo Ende
Line2:
sVar =sVar & " Line2:een"
Ende:
MsgBox sVar,0,"On...GoSub"
End Sub