次の例は、On...GoTo と On Error を示しています。
ユーザーが値を入力します。値が 1、2、3 のときは、On...GoTo ステートメントが label1、label2、または label3 に制御を移します。値が On...GoTo に有効な範囲 (ゼロから 255 まで) 内の別の値であれば、制御は次のステートメントに移ります。ユーザーが On...GoTo の範囲外の値を入力するか、CInt 関数で整数に変換できないと、エラーとなります。LotusScript® は、On Error ステートメントに従って OutOfRange ラベルに制御を移します。
ユーザー入力に応じて、OneTwoThree サブルーチンが適切なメッセージを表示します。入力が有効なときは、Exit Sub ステートメントがサブルーチンを終了します。入力が無効なときは制御が EnterNum ラベルに移るため、有効な値を再入力することができます。
Sub OneTwoThree
Dim num As Integer
On Error GoTo OutOfRange
EnterNum:
num% = CInt(InputBox("Enter 1, 2, or 3"))
On num% GoTo label1, label2, label3
' The user did not enter 1, 2, or 3, but a run-time error
' did not occur (the user entered a number in
' the range 0 - 255).
MessageBox "You did not enter a correct value! Try again!"
GoTo EnterNum
label1:
MessageBox "You entered 1."
Exit Sub
label2:
MessageBox "You entered 2."
Exit Sub
label3:
MessageBox "You entered 3."
Exit Sub
' An error condition has occurred.
OutOfRange:
MessageBox "The value you entered is negative, " _
& "greater than 255, or not a number. Try again!"
GoTo EnterNum
End Sub
OneTwoThree ' Call the OneTwoThree sub.