GoSub...Return Statement

呼叫由子常式或函式中的貼標所指示的子常式。貼標後的陳述式被執行,直至遇到下一個 Return 陳述式。隨後,程式會繼續執行 GoSub 陳述式之後的陳述式。

語法


請參閱參數

參數:

Sub/Function

陳述式區塊

貼標

陳述式區塊

GoSub Label

Exit Sub/Function

Label:

陳述式區塊

Return

End Sub/Function

GoSub 陳述式呼叫由子常式或函式中的貼標所指示的局部子常式。貼標的名稱必須以分號 (「:」) 結尾。

警告圖示

當 LibreOffice Basic 發現 Return 陳述式前面沒有 GoSub 陳述式時,將傳回錯誤訊息。使用 Exit SubExit Function 以確保程式在執行到下一個 Return 陳述式之前結束子常式或函式。


以下示例用於說明 GoSubReturn 的用法。透過將程式段執行兩遍,計算由使用者輸入的兩個數的平方根。

示例:


Sub ExampleGoSub
Dim iInputa As Single
Dim iInputb As Single
Dim iInputc As Single
    iInputa = Int(InputBox("Enter the first number:","NumberInput"))
    iInputb = Int(InputBox("Enter the second number:","NumberInput"))
    iInputc=iInputa
    GoSub SquareRoot
    Print "The square root of";iInputa;" is";iInputc
    iInputc=iInputb
    GoSub SquareRoot
    Print "The square root of";iInputb;" is";iInputc
    Exit Sub
SquareRoot:
    iInputc=sqr(iInputc)
    Return
End Sub