Pernyataan GoSub...Return
Memanggil subrutin yang ditandai dengan label dari subrutin atau fungsi. Pernyataan setelah label dieksekusi sampai pernyataan Pengembalian berikutnya. Setelah itu, program melanjutkan dengan pernyataan yang mengikuti pernyataan Pergi ke Sub.
Sintaksis:
lihat Parameter
Parameter:
Sub/Function
blok pernyataan
Label
blok pernyataan
Label GoSub
End Sub/Function
Label:
blok pernyataan
Return
End Sub/Function
Pernyataan Pergi ke Sub memanggil subrutin lokal yang ditunjukkan oleh label dari dalam subrutin atau fungsi. Nama label harus diakhiri dengan tanda titik dua (":").
Jika program menemukan pernyataan Pengembalian yang tidak didahului oleh Pergi ke Sub, LibreOffice Dasar mengembalikan pesan kesalahan. Gunakan Keluar Sub atau Fungsi Keluar untuk memastikan bahwa program meninggalkan Sub atau Fungsi sebelum mencapai pernyataan Pengembalian berikutnya.
Contoh berikut menunjukkan penggunaan Pergi ke Sub dan Pengembalian. Dengan menjalankan bagian program dua kali, program menghitung akar kuadrat dari dua angka yang dimasukkan oleh pengguna.
Contoh:
Sub ExampleGoSub
Dim iInputa As Single
Dim iInputb As Single
Dim iInputc As Single
iInputa = Int(InputBox("Masukkan nomor pertama: ","NumberInput"))
iInputb = Int(InputBox("Masukkan nomor kedua: ","NumberInput"))
iInputc=iInputa
GoSub SquareRoot
Cetak "Akar kuadrat dari";iInputa;" adalah";iInputc
iInputc=iInputb
GoSub SquareRoot
Cetak "Akar kuadrat dari";iInputb;" adalah";iInputc
Exit Sub
SquareRoot:
iInputc=sqr(iInputc)
Return
End Sub