GoSub...Return Statement
呼叫由子常式或函式中的貼標所指示的子常式。貼標後的陳述式被執行,直至遇到下一個 Return 陳述式。隨後,程式會繼續執行 GoSub 陳述式之後的陳述式。
語法:
請參閱參數
參數:
Sub/Function
陳述式區塊
貼標
陳述式區塊
GoSub Label
Exit Sub/Function
Label:
陳述式區塊
Return
End Sub/Function
GoSub 陳述式呼叫由子常式或函式中的貼標所指示的局部子常式。貼標的名稱必須以分號 (「:」) 結尾。

當 LibreOffice Basic 發現 Return 陳述式前面沒有 GoSub 陳述式時,將傳回錯誤訊息。使用 Exit Sub 或 Exit Function 以確保程式在執行到下一個 Return 陳述式之前結束子常式或函式。
以下示例用於說明 GoSub 和 Return 的用法。透過將程式段執行兩遍,計算由使用者輸入的兩個數的平方根。
示例:
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