Instruction GoSub...Return
Appelle une sous-routine indiquée par une étiquette provenant d'une sous-routine ou d'une fonction. Les instructions suivant l'étiquette sont exécutées jusqu'à l'instruction Return suivante. Ensuite, l'exécution du programme se poursuit par l'instruction suivant l'instruction GoSub.
Syntaxe :
voir Paramètres
Paramètres :
Sub/Function
bloc d'instructions
Étiquette
bloc d'instructions
Étiquette GoSub
Exit Sub/Function
Étiquette :
bloc d'instructions
Return
End Sub/Function
L'instruction GoSub appelle une sous-routine locale de l'intérieur d'une sous-routine ou d'une fonction, indiquée par une étiquette. Le nom de l'étiquette doit se terminer par un signe deux-points (":").
Si le programme rencontre une instruction Return qui n'est pas précédée de GoSub, LibreOffice Basic renvoie un message d'erreur. Utilisez Exit Sub ou Exit Fonction pour vous assurer que le programme quitte une instruction Sub ou Function avant d'atteindre l'instruction Return suivante.
L'exemple suivant montre l'utilisation des instructions GoSub et Return. En exécutant deux fois la section de programme suivante, le programme calcule la racine carrée de deux nombres saisis par l'utilisateur.
Exemple :
Sub ExampleGoSub
Dim iInputa As Single
Dim iInputb As Single
Dim iInputc As Single
iInputa = Int(InputBox("Saisissez le premier nombre : ","EntréeNombre"))
iInputb = Int(InputBox("Saisissez le second nombre : ","EntréeNombre"))
iInputc=iInputa
GoSub SquareRoot
Print "La racine carrée de";iInputa;" est";iInputc
iInputc=iInputb
GoSub SquareRoot
Print "La racine carrée de";iInputb;" est";iInputc
Exit Sub
SquareRoot:
iInputc=sqr(iInputc)
Return
End Sub