ラベルのリストの中の 1 つに制御を移し、Return ステートメントに到達するまでステートメントを実行し、On...GoSub ステートメントの次のステートメントに制御を戻します。
On numExpr GoSub label [ , label, ... ]
numExpr
制御を移す対象のラベルを決定するための数式です。numExpr の値は 255 以下でなければなりません。
label
実行する一連のステートメントの位置を指定するラベルです。このうち、最後のステートメントは Return ステートメントです。
On...GoSub ステートメント、そのラベル、Return ステートメントは、すべて同じプロシージャ内になければなりません。
LotusScript® は、numExpr が 1 のときは最初の label に、numExpr が 2 のときは第 2 の label にという形で制御を移していきます。実行は適切なラベルから Return ステートメントまで継続されます。その後、On...GoSub ステートメントの次のステートメントに制御が戻ります。LotusScript が Return ステートメントに到達する前に早期に終了させるステートメント (Exit や GoTo など) を検出した場合は、Return ステートメントが実行されません。
LotusScript は、numExpr を最も近い整数に丸めてから、これを使用して対象ラベルを決定します。numExpr がゼロまたはリスト内のラベルの数より大きい場合、On...GoSub ステートメントは無視され、次のステートメントから実行が継続します。
LotusScript は numExpr がゼロより小さいか 255 より大きいとエラーとなります。